[英]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.