次の方法で共有


HttpClient.SendRequestAsync メソッド

定義

オーバーロード

SendRequestAsync(HttpRequestMessage)

非同期操作として HTTP 要求を送信します。 HttpClient クラスのプログラミング ガイダンスとコード例については、HttpClient の概念に関するトピックを参照してください。

SendRequestAsync(HttpRequestMessage, HttpCompletionOption)

HTTP 入力候補オプションを使用して HTTP 要求を非同期操作として送信します。 HttpClient クラスのプログラミング ガイダンスとコード例については、HttpClient の概念に関するトピックを参照してください。

SendRequestAsync(HttpRequestMessage)

非同期操作として HTTP 要求を送信します。 HttpClient クラスのプログラミング ガイダンスとコード例については、HttpClient の概念に関するトピックを参照してください。

public:
 virtual IAsyncOperationWithProgress<HttpResponseMessage ^, HttpProgress> ^ SendRequestAsync(HttpRequestMessage ^ request) = SendRequestAsync;
/// [Windows.Foundation.Metadata.Overload("SendRequestAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpResponseMessage, HttpProgress> SendRequestAsync(HttpRequestMessage const& request);
[Windows.Foundation.Metadata.Overload("SendRequestAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpResponseMessage,HttpProgress> SendRequestAsync(HttpRequestMessage request);
function sendRequestAsync(request)
Public Function SendRequestAsync (request As HttpRequestMessage) As IAsyncOperationWithProgress(Of HttpResponseMessage, HttpProgress)

パラメーター

request
HttpRequestMessage

送信する HTTP 要求メッセージ。

戻り値

非同期操作を表す オブジェクト。

属性

注釈

この操作はブロックされません。 返された IAsyncOperationWithProgress ( HttpResponseMessageHttpProgress の) は、応答全体 (コンテンツを含む) が読み取られた後に完了します。

要求パラメーターで渡される HttpRequestMessage を使用すると、SendRequestAsync メソッドは、送信する HTTP コンテンツだけでなく、要求メッセージのヘッダーも設定できます。 これに対し、 PostAsync メソッドと PutAsync メソッドでは、HTTP コンテンツ ヘッダーのより制限されたセットのみを設定できます。

この関数がスローする例外を次に示します。

E_ILLEGAL_METHOD_CALL

要求メッセージは HttpClient インスタンスによって既に送信されています。

例外処理

このメソッドを呼び出すときに例外を処理するコードを記述する必要があります。 例外は、パラメーター検証エラー、名前解決エラー、ネットワーク エラーによって発生する可能性があります。 ネットワーク エラーの例外 (接続の損失、接続エラー、HTTP サーバーの障害など) は、いつでも発生する可能性があります。 これらのエラーが起きると、例外がスローされます。 アプリによって処理されない場合、例外によってアプリ全体がランタイムによって終了する可能性があります。 例外を処理する方法の詳細については、「 ネットワーク アプリでの例外の処理 」および「 方法: HRESULT と例外をマップする」を参照してください。

こちらもご覧ください

適用対象

SendRequestAsync(HttpRequestMessage, HttpCompletionOption)

HTTP 入力候補オプションを使用して HTTP 要求を非同期操作として送信します。 HttpClient クラスのプログラミング ガイダンスとコード例については、HttpClient の概念に関するトピックを参照してください。

public:
 virtual IAsyncOperationWithProgress<HttpResponseMessage ^, HttpProgress> ^ SendRequestAsync(HttpRequestMessage ^ request, HttpCompletionOption completionOption) = SendRequestAsync;
/// [Windows.Foundation.Metadata.Overload("SendRequestWithOptionAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpResponseMessage, HttpProgress> SendRequestAsync(HttpRequestMessage const& request, HttpCompletionOption const& completionOption);
[Windows.Foundation.Metadata.Overload("SendRequestWithOptionAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpResponseMessage,HttpProgress> SendRequestAsync(HttpRequestMessage request, HttpCompletionOption completionOption);
function sendRequestAsync(request, completionOption)
Public Function SendRequestAsync (request As HttpRequestMessage, completionOption As HttpCompletionOption) As IAsyncOperationWithProgress(Of HttpResponseMessage, HttpProgress)

パラメーター

request
HttpRequestMessage

送信する HTTP 要求メッセージ。

completionOption
HttpCompletionOption

すべての応答が読み取られたときに HttpClient 操作が完了したと見なされるか、ヘッダーだけが読み取られたと見なされるかを示す値。

戻り値

非同期操作を表す オブジェクト。

属性

注釈

この操作はブロックされません。 返された IAsyncOperationWithProgress ( HttpResponseMessageHttpProgress の) は 、completionOption パラメーターの値に応じて完了します。

要求パラメーターで渡される HttpRequestMessage を使用すると、SendRequestAsync メソッドは、送信する HTTP コンテンツだけでなく、要求メッセージのヘッダーも設定できます。 これに対し、 PostAsync メソッドと PutAsync メソッドでは、HTTP コンテンツ ヘッダーのより制限されたセットのみを設定できます。

この関数がスローする例外を次に示します。

E_ILLEGAL_METHOD_CALL

要求メッセージは HttpClient インスタンスによって既に送信されています。

例外処理

このメソッドを呼び出すときに例外を処理するコードを記述する必要があります。 例外は、パラメーター検証エラー、名前解決エラー、ネットワーク エラーによって発生する可能性があります。 ネットワーク エラーの例外 (接続の損失、接続エラー、HTTP サーバーの障害など) は、いつでも発生する可能性があります。 これらのエラーが起きると、例外がスローされます。 アプリによって処理されない場合、例外によってアプリ全体がランタイムによって終了する可能性があります。 例外を処理する方法の詳細については、「 ネットワーク アプリでの例外の処理 」および「 方法: HRESULT と例外をマップする」を参照してください。

こちらもご覧ください

適用対象