かなり単純な質問です。ライブラリを使用WinHttpして C++ プログラムで Web サービス リクエストを作成する必要がありますか、それともライブラリのIXmlHttpRequestインターフェイスを使用しmsxmlて Web サービス リクエストを送信する必要がありますか? 明らかに、WinHttpライブラリはライブラリに比べてより細かい制御を提供しIXmlHttpRequestます。しかし、XmlHttpRequestオブジェクトはw3.org標準であり、理論的にはより移植性があります。
2 に答える
安全なチャネル (HTTPS) でサービスにアクセスしているか、単純なチャネル (HTTP) でアクセスしているかによって異なります。
MSDN ( http://msdn.microsoft.com/en-us/library/ms891732.aspx) に従って、IXMLHttpRequest は HTTP のみをサポートします。
注 IXMLHTTPRequest は、安全な Web サイト アクセスをサポートしていません。安全な Web サイトにアクセスするには、WinINet API を使用します。
しかし、WinInet API はかなり古く、いくつかのマルチスレッドの問題があります (MSDN にもあると思います)...
したがって、最善の策は HTTPS および HTTP の WinHTTP であり、それ以外の場合は古き良き IXMLHttpRequest です。
注: libcurl と curlpp (libcurl の c++ ポート) もチェックする必要があります。これには古い投稿がありますhttp://stackoverflow.com/questions/1011339/how-do-you-make-a-http-request-with-c
あなたの「簡単な質問」に対する簡単な答え: 最も快適で、要件に最も適したものを使用する必要があります。
boost::asio で http クライアントを検討することもできます。