我正在使用需要調用WCF服務的本機C客戶端應用程序(未使用Visual Studio構建)。我正在創建WCF服務,所以我完全控制它。從C代碼調用WCF
我發現的大部分信息涉及從非託管C++客戶端調用WCF。
有沒有人試過WWSAPI?
我希望得到一些方向,看這是否可能,以及可以使用哪些技術。任何幫助將不勝感激!
我正在使用需要調用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://stackoverflow.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