.NET HTTP POSTリクエストを送信します
.NETでは、HTTP Postは、開発者にサーバーにデータを送信するよう要求しました。このデータは、JSON、XML、またはフォームURLエンコードデータなど、さまざまな形式を使用できます。この記事では、.NETでHTTP POSTリクエストを発行する方法を包括的に概要して、さまざまな方法を調査し、コードの例を提供します。
方法1:httpclient(推奨)**
を使用します設定:
<code>private static readonly HttpClient client = new HttpClient();</code>
<code>var values = new Dictionary<string, string>() { { "thing1", "hello" }, { "thing2", "world" } }; var content = new FormUrlEncodedContent(values); var response = await client.PostAsync("http://www.example.com/recepticle.aspx", content); var responseString = await response.Content.ReadAsStringAsync();</code>
メソッド2:サードパーティライブラリ
<code>var responseString = await client.GetStringAsync("http://www.example.com/recepticle.aspx");</code>
メソッド3:HTTPWEBREQUEST(推奨されない)**
<code>var request = new RestRequest("resource/{id}"); request.AddParameter("thing1", "Hello"); request.AddParameter("thing2", "world"); var response = client.Post(request); var content = response.Content; // 原始内容作为字符串</code>
httpwebrequestは古い方法であり、パフォーマンスはhttpclientほど良くありません。互換性の理由から、それはまだサポートされています。
<code>var responseString = await "http://www.example.com/recepticle.aspx" .PostUrlEncodedAsync(new { thing1 = "hello", thing2 = "world" }) .ReceiveString();</code>
WebClientも別の選択肢ですが、効率はHTTPClientほど効率的ではありません。
<code>string postData = "thing1=" + Uri.EscapeDataString("hello"); postData += "&thing2=" + Uri.EscapeDataString("world"); var data = Encoding.ASCII.GetBytes(postData); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; using (var stream = request.GetRequestStream()) { stream.Write(data, 0, data.Length); }</code>
.NET送信HTTP投稿リクエストは複数の方法を使用できます。 HTTPClientは好ましい方法であり、3番目のパーティライブラリは他の機能を提供します。互換性の理由から、HTTPWEBREQUESTとWebClientを使用することもできますが、最新の方法を使用して最適なパフォーマンスと機能を取得することをお勧めします。
以上がさまざまな方法を使用して.NETでHTTP POSTリクエストを送信するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。