从C代码调用WCF
我正在使用需要调用WCF服务的本机C客户端应用程序(未使用Visual Studio构建)。我正在创建WCF服务,所以我完全控制它。从C代码调用WCF
我发现的大部分信息涉及从非托管C++客户端调用WCF。
有没有人试过WWSAPI?
我希望得到一些方向,看这是否可能,以及可以使用哪些技术。任何帮助将不胜感激!
WCF是非常强大的和可配置的,并允许使用许多不同的绑定(HTTP,套接字,MSMQ,自定义等)。从版本3.5开始,我相信,您可以使用JSON/REST绑定和契约。以下是官方链接:Overview of REST in WCF,以及一些示例:WCF 4 JSON REST Service和这里:REST Service with WCF and JSON。
现在,为什么REST和JSON?因为这些协议非常轻便,不需要大量的依赖或库。这实际上是REST, as opposed to SOAP的整个点。
所以,有了这些,你只需要一个TCP/HTTP栈和客户端至极一个JSON解析器使得它比较容易在C编程下面是一个简单的JSON库的链接:Jansson
我的歉意(noob),但我不明白'TCP/HTTP协议栈'是什么?我控制了WCF绑定并可以改变这种情况,但是如何将Jansson连接到TCP/HTTP堆栈? – 2012-02-09 20:48:31
@EdwardLeno - HTTP堆栈是一个小型库,允许C客户端连接到HTTP服务器。 TCP是由HTTP隐含的。在这里看到更多:http://*.com/questions/3243209/http-stack-in-c – 2012-02-10 09:34:57
我尝试了几个客户端,但无法让他们与我的情况一起工作。我对cURL感兴趣,并可能将其用于其他一些项目。谢谢。顺便说一句,我与gSOAP,这是工作。 – 2012-02-23 00:48:05
你可以在你的WCF服务中使用JSON/REST绑定吗?在windows或c中的客户端是 – 2012-02-09 18:15:50
? – 2012-02-09 18:16:08
如果C客户端将成为服务的唯一客户端,并且您不打算在客户端使用任何WCF库,那么您可能根本不想创建WCF服务? – antlersoft 2012-02-09 18:18:30