web-dev-qa-db-ja.com

HTTPクライアントを実装するには、どのC ++ライブラリを使用する必要がありますか?

HTTPクライアントの実装を実装または有効にするC++ライブラリを探しています。 Cookieも処理する必要があります。

何を提案しますか?

38
Piotr Dobrogost

Curl ++ :は、特にC++スタイルの物事が必要な場合のオプションです。

cpp-netlib :非常に使いやすく、ubuntuで利用可能

Sudo apt-get install libcppnetlib-dev

例:

using namespace boost::network;
using namespace boost::network::http;

client::request request_("http://127.0.0.1:8000/");
request_ << header("Connection", "close");
client client_;
client::response response_ = client_.get(request_);
std::string body_ = body(response_);
28
bdonlan

Poco Libraries をご覧ください。

ポータブルなので、使い始めました。一緒に仕事をするのは楽しいことです。シンプルでクリーン-とりあえず派手なことに飛び込みませんでした。

18
da_m_n
13
dfa

C++(STL)にはデフォルトではHTTPまたはネットワークライブラリがありません。他の何かを行う必要があります。

libcurl はあなたが望むことをするべきです。 cURL ++ は、光沢のあるC++ラッパーにラップされた同じlibcurlです。

10
The Unknown

WinInetを試すことができます

http://msdn.Microsoft.com/en-us/library/aa385331(VS.85).aspx

WinHTTPとは対照的に、クライアント側に向いています。

2
Eugene

複雑なhttp APIが必要な場合はcurlを、ファイルを取得したい場合はhttp-tinyを試してください。

http://curl.haxx.se/libcurl/competitors.html

1
Neil Han

Windows用の場合は、Windows HTTPサービス(WinHTTP)をご覧ください

http://msdn.Microsoft.com/en-us/library/aa384273(VS.85).aspx

Microsoft Windows HTTPサービス(WinHTTP)は、HTTPクライアントアプリケーションプログラミングインターフェイス(API)を開発者に提供し、HTTPプロトコルを介して他のHTTPサーバーに要求を送信します。

WinHTTPは、Active Server Pages(ASP)ベースのアプリケーションでの使用に適したC/C++アプリケーションプログラミングインターフェイス(API)とコンポーネントオブジェクトモデル(COM)オートメーションコンポーネントの両方を提供します。

Cookieの場合 http://msdn.Microsoft.com/en-us/library/aa383261(VS.85).aspx

1
singinanarchist

Windowsでは、 IWebBrowser2 インターフェイスを使用してIEを駆動できます。

0
Eugene Yokota