2

C++ Rest SDK (コードネーム "Casablanca") を使用して、Visual C++ 2012 でクライアント側のコードを書いています。クライアントを作成して、テキスト文字列をサーバーに POST したいと考えています。ただし、次のコードを送信すると、コンパイルは行われますが、リクエストの送信は行われません。「methods::POST」の後のすべてを削除して空白の投稿リクエストを送信すると、サーバーによって送受信されます。どこに問題があるのか​​教えてください。この機能に関連するドキュメントは、カサブランカ ドキュメントで入手できます。

pplx::task<http_response>resp = client.request(methods::POST,L"",L"This is the random text that I wish to send", L"text/plain");
4

4 に答える 4

1

ここでの使用法は正しいように見えると思います。あなたのカサブランカは最新版ですか?ここから確認してください: http://casablanca.codeplex.com/ 測定値が正確であると確信している場合は、最小限の再現を作成し、ここでバグを報告することをお勧めします: http://casablanca.codeplex.com/ワークアイテム/リスト/基本

于 2013-07-12T23:01:24.123 に答える
0

まだコメントできないので、私の考えを答えに入れなければなりません。この問題を次のように解決しました。コードを変更する必要がないように、コンテンツ タイプをパラメーターとして受け取るリクエスト メソッドのオーバーロードがあります。

m_client->request(methods::POST, L"/statuses/update.json?" + url_encode(data),L"",L"application/x-www-form-urlencoded");

明らかに url_encode メソッドを実装する必要がありますが、それは難しくありません。「カサブランカ」にはかなり良い実装があります。このサイトで検索すると、いくつかの良い例が見つかります。

于 2014-09-20T20:53:35.250 に答える
0

body パラメーターは json::value でなければなりません。

于 2013-06-14T20:53:11.757 に答える