桌面应用程序和web应用程序之间的通信
Communication between a desktop app and a web app?
我有兴趣有一个桌面应用程序发送消息到一个web应用程序。具体来说,桌面应用程序,用Java编写,需要发送消息到一个Javascript函数,将在浏览器中运行。消息只需要以一种方式发送。而且,这两个程序将在同一台本地机器上运行。如果有必要,我可以设置一个本地开发服务器。
我是网络和web开发的新手,我不知道如何处理这个问题。谁能提点建议吗?
我认为正确的方法(如果不是唯一的方法)是通过一个服务器,两个应用程序都与
我推荐的企业架构方式是:
- 将公共信息放到webservice中。
- 网站发送信息,可能通过ajax或通过导航到不同的URL或做一个表单POST到web服务。
- 桌面应用将启动并订阅webservice。一旦桌面应用有更新,webservice就会通知它。(注意,桌面应用程序,可能需要轮询更新)。
这就是像flikr, twitter等服务使用的方法。
轻量(即更小的架构)的破解方式是让你的网站有一个RSS源,你的桌面应用程序订阅。桌面应用程序通过RSS源更新。
这就是新闻网站等服务向读者发送更新的方式。将google reader作为RSS客户端示例。RSS有一个优势,从一开始就支持一般的RSS用户,如MS outlook或google reader,而从长远来看,web服务可能会更加灵活和干净。
为什么桌面应用程序需要与javascript对话?你真正想做的是什么?向数据库发送或从数据库接收数据?在web应用程序上运行一些业务逻辑?这些事情通常是使用肥皂或rest从桌面应用程序到网站完成的。
浏览器是否以某种方式嵌入桌面应用程序?或者它只是作为一个单独的进程运行?看起来音频处理真的应该在桌面应用程序中运行。
然而,假设浏览器作为一个独立的应用程序运行,你应该能够通过查询字符串向浏览器发送消息。桌面应用程序可以启动浏览器,指向一个url并向其传递一些参数。然后javascript可以处理这些参数。谷歌是否可以用jquery处理查询字符串参数。
嵌入一个简单的容器,如jetty,然后使用Jersey或一个简单的Servlet
- 通过socket.io与heroku应用程序进行通信
- 如何在Windows Phone 8.1应用程序中在C#和Javascript之间传递数据或通信
- 多个应用程序之间的通信
- 如何在同一页面上的Angular应用程序和非Angular应用软件之间进行通信
- 如何启用ionic应用程序和浏览器之间的通信
- 如何在 AIR Android 应用程序中在 JS 和 AS3 之间进行通信
- 角度 2 交叉应用程序(根组件)通信
- 我的网络应用程序如何与串行端口通信
- 使用 Twitter API 的应用程序如何与 Twitter 通信
- 托盘应用程序和JavaScript之间的通信
- 提供穷人的仪表板应用程序通信
- 应用程序与 Web 视图中注入的脚本之间的通信
- 如何从 JavaScript 到 Java 应用程序进行通信
- 插件AMD应用程序如何与主机非AMD应用程序通信
- JavaScript web应用程序与android应用程序离线通信
- Android Phonegap应用程序中的Javascript到Java通信
- 使用Websockets在两个JAVA web应用程序之间进行通信
- Web应用程序需要使用串行端口进行通信
- NodeJS用于网站和桌面应用程序之间的实时通信
- Webview与本机iOS应用程序通信的任何方式