我很好奇之间的双向沟通,如果这种情况甚至有可能: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