我很好奇之間的雙向溝通,如果這種情況甚至有可能:Web應用程序和桌面應用程序
- 的.Net Windows窗體應用程序(我們的產品)與一對夫婦的暴露WCF服務(託管自我,爲例如'http://localhost:8000/myservice/method1'),以提升模式運行。
- Web應用程序(從其他製造商)在公共領域,這將在雙向模式與我們的應用程序進行通信:
- web應用到桌面應用程序:我們的應用程序的安裝過程中,我們註冊一個自定義協議'xxx'(類似於'mailto')並將我們的應用程序設置爲此協議的處理程序。因此,Web應用程序可以在我們的桌面應用程序中觸發一個以'href =「xxx:parameters」'形式的鏈接的動作。
- 桌面應用程序到Web應用程序:Web應用程序會定期(例如每秒)通過javascript ajax調用來輪詢我們的本地主機 WCF服務。
2.2選項甚至有可能嗎?我們應該爲WCF服務使用哪種綁定?跨域調用(從公共域到本地主機)有問題嗎?
編輯 - 是的,溝通不是雙向的,因爲在我們的場景中,桌面應用程序無法直接操作Web應用程序。輪詢選項只是一個想法,如何從桌面應用程序到Web應用程序的狀態,所以如果有更好的選擇,我會非常想聽聽它:)
有幾個其他替代方案可用於網絡之間的通信應用程序和桌面應用程序(java插件,用於IE的active x,firefox插件,chrome原生插件,...),但對於新版本的瀏覽器,Java版本,Windows版本,它們都非常脆弱......您必須保持所有這些。我們正在尋找一種適用於所有主流瀏覽器的選項,並且負責Web應用程序的製造商將盡可能少地完成工作。
來自其他製造商的Web應用程序是否可以託管在可以控制的服務器上? – mageos
@ imageos - 不,我們希望設計該系統,以便其他製造商儘可能減少額外的工作。 – sventevit
與其他製造商的溝通是什麼?這是一個寧靜的API嗎?基於SOAP?有雙方都在使用的API嗎? – mageos