C#でのHttpWebRequestの使い方は何ですか?
C#のHttpWebRequestクラスは、HTTPリクエストを作成しWebサーバーと通信するために使用されます。リクエストヘッダーの設定、リクエストの送信、レスポンスの取得などを行うための一連のメソッドやプロパティが提供されています。
HttpWebRequestの一般的な使用法は次の通りです:
- HttpWebRequestオブジェクトを作成する。
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.example.com");
- リクエストメソッドを設定します。
request.Method = "GET"; // 或者 "POST"
- リクエストヘッダを設定する:
request.Headers.Add("header-name", "header-value");
- POSTリクエストのボディを設定する:
string postData = "param1=value1¶m2=value2";
byte[] requestBody = Encoding.UTF8.GetBytes(postData);
request.ContentLength = requestBody.Length;
using (Stream requestStream = request.GetRequestStream())
{
requestStream.Write(requestBody, 0, requestBody.Length);
}
- リクエストを送信してレスポンスを取得する。
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
- レスポンスの取得:
using (Stream responseStream = response.GetResponseStream())
{
StreamReader reader = new StreamReader(responseStream);
string responseContent = reader.ReadToEnd();
}
- レスポンスヘッダーを取得する:
string responseHeader = response.Headers["header-name"];
- 応答を終了します。
response.Close();
HttpWebRequestはIDisposableインターフェースの実装クラスであるため、リソースの正しい解放を確保するためにusingステートメントを使用することをお勧めします。
上記は、HttpWebRequestの基本的な使い方です。他のプロパティを設定したり、他のメソッドを呼び出すことで、さらに多くの機能を実現することができます。