我正在开发一个媒体应用程序,我想提供一个外部API库,允许其他应用程序与我的查询状态信息进行通信。我的应用程序是用C#编写的,API DLL也是一样的。最初我的想法是简单地使用WCF和命名管道,因为它将提供一种非常简单的方法来编码整个界面。
然而,我意识到这样做几乎可以阻止任何其他语言或平台与应用程序通信,如果我想制作它,例如,安卓或Web远程。
因此,我可以使用哪种协议,允许在我的C#代码中使用快速简单的接口,但也允许在其他平台上编写API。
基本要求是:
我看过很多选项,之前使用过XML-RPC和JSON-RPC,但想知道社区认为什么是最好的选择。
答案 0 :(得分:2)
我认为使用WCF这是做你想要的最好的方法。维护简单,满足您的所有要求,易于扩展。只是不要通过net.pipe限制对API的访问。我认为你应该使用net.pipe,net.tcp和基本的http作为主要绑定。我的意思是每个服务的几个端点。因此,客户端应用程序无论使用何种语言编写,都可以选择用于访问API服务器的绑定。
例如:
举个例子:
http://www.kevingao.net/wcf-java-interop/java-client-and-wcf-server.html