サーバーに非同期要求を送信し、応答ストリームから情報を取得する必要があります。 私はHttpClient.GetStreamAsync()を使用していますが、POSTが使用されるべきサーバーの応答です。 PostStreamAsync()のような同様のメソッドがありますか?ありがとうございました。c#:非同期リクエストを投稿し、httpclientでストリームを取得する方法
4
A
答えて
0
HttpClientではなく、HttpWebRequestを使用する必要がありますか?
これらは、非同期の方法と、method
プロパティを設定することによって、postとgetの間で切り替えることができます。
例えば:
var request = (HttpWebRequest) WebRequest.Create(uri);
request.Method = "POST";
var postStream = await request.GetRequestStreamAsync()
2
使用HttpClient.PostAsync
、あなたがHttpResponseMessage.Content.ReadAsStreamAsync()
メソッドを介して応答ストリームを取得することができます。
var message = await client.PostAsync(url, content);
var stream = await message.Content.ReadAsStreamAsync();
1
あなたは、あなたがメモリにストリーム全体を読んでいましたPostAsync
原因message.Content.ReadAsStreamAsync
を使用してはならない大規模なデータをストリーミングするためHttpClient
を使用したい場合。代わりに、次のコードブロックを使用することができます。
var message = new HttpRequestMessage(HttpMethod.Post, "http://localhost:3100/api/test");
var response = await client.SendAsync(message, HttpCompletionOption.ResponseHeadersRead);
var stream = await response.Content.ReadAsStreamAsync();
ここで重要なことは、メモリに全体の内容を読み取ることがないクライアントに指示HttpCompletionOption.ResponseHeadersRead
オプションです。
関連する問題
- 1. 非同期でコメントを投稿する
- 2. C#HttpClient POST非同期
- 3. 非同期OkHttpClient投稿
- 4. 非同期ワークフロー内でHttpClientタイムアウトを取得する
- 5. C#WPFで非同期のWebリクエストを作成する方法
- 6. arangodb、投稿リクエストからJSONを取得する方法
- 7. C#でHTTP投稿データを取得する方法 - FiddlerCore?
- 8. 目的C:ソケットを使用した投稿/取得リクエスト
- 9. Android非同期クラス投稿機能
- 10. Web API 2 - 非同期投稿
- 11. 投稿方法リクエスト/フォーム投稿
- 12. RiotjsでAjax非同期リクエストを取得する
- 13. 投稿時に空のリクエストを取得
- 14. ffmpegからの出力を非同期でストリームする方法
- 15. HttpClient(または他のHTTPクラス)を使用してJSONを非同期に取得する方法
- 16. サーバへの非同期リクエストがループ内に投稿されました - Android
- 17. レスポンステキストを非同期で取得する方法は?
- 18. cでプロパティゲッターの非同期サービスコール結果を取得する方法
- 19. Visual C++でファイルを非同期で読み取る方法は?
- 20. GRPC非同期応答ストリームC#
- 21. 投稿方法リクエストAlamofire
- 22. 投稿を承認するSpring非同期コントローラの応答
- 23. Objective CにSOAPリクエストを投稿する方法は?
- 24. 同じカテゴリの投稿を非表示にする方法
- 25. リクエストにタグを設定してResponse Volleyの非同期リクエストから取得する方法は?
- 26. 投稿リクエストでエラー417を取得しています
- 27. djangoでブロブを投稿して取得する方法
- 28. Curlで投稿した後にURLを取得する方法
- 29. 非同期Webリクエストのマルチスレッド化方法
- 30. 非同期URLリクエストの送信方法
ストリーム全体がメモリに読み込まれることに注意してください。これは主に、ユーザーがストリーミングを使用する予定のときに期待するものではありません。 – lanwin