[英]Communication between Java Application and C++ Application
[英]Communication between javascript and its hosting java or c++ application
我试图找出是否有标准或推荐的方式从 javascript 到嵌入浏览器小部件的应用程序进行通信,反之亦然。 托管应用程序可以用 java 或 c++ 编写,并可以在 Windows 和 Unix 平台上运行,但 javascript 将在两个客户端之间共享。
到目前为止,我已经读到:
还有哪些其他选择?
谢谢! 夏姆
我们有一个 VB6 应用程序托管 Microsoft 的WebBrowser object (IE)。 我们使用了一个简单的 URL 拦截机制来促进浏览器和托管应用程序之间的通信。 由于浏览器控件有一个之前的导航界面,我们可以拉出 URL 并检查它的命令,然后取消导航事件(因为它是针对托管应用程序的)或让它通过(因为它是一个普通的 URL) .
我们在 Javascript 或 HTML 链接标签中使用了类似app://commandName?arg1=val&arg2=val
的内容。
然后在浏览器的 BeforeNavigate 事件中,我们检查 url 中的app://
如果我们得到它,我们就知道浏览器正在向父应用程序发送消息。
简单但有效(无论如何满足我们的需要)。
编辑
还应该提到的是,大多数嵌入式浏览器也有操作 DOM 的机制。 请记住,您应该能够随意提取信息(HTML 节点)和注入信息。
JavaScript 有XMLHttpRequest API,这使得向服务器发送数据和从服务器检索数据成为可能。 将此 API 与格式为 XML 或 JSON 的消息一起使用被指定为AJAX 。
AJAX 可用于实现您给出的示例,HTML/javascript 中的树节点在扩展时从服务器检索子节点列表。 请注意,使用 AJAX 时,服务器可以用任何语言编写(C、Java、Python、Ruby 等)。
我建议你看一下AJAX。在你对AJAX有了很好的了解之后,你可以稍微了解一下web的服务。 web 服务是通过 WEB 以任意编程语言开发的 2 个应用程序的通信方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.