HttpClient.Send 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| Send(HttpRequestMessage) |
發送包含指定請求的 HTTP 請求。 |
| Send(HttpRequestMessage, HttpCompletionOption) |
發送 HTTP 請求。 |
| Send(HttpRequestMessage, CancellationToken) |
發送帶有指定請求與取消權杖的 HTTP 請求。 |
| Send(HttpRequestMessage, HttpCompletionOption, CancellationToken) |
發送包含指定請求、完成選項及取消標記的 HTTP 請求。 |
Send(HttpRequestMessage)
發送包含指定請求的 HTTP 請求。
public:
System::Net::Http::HttpResponseMessage ^ Send(System::Net::Http::HttpRequestMessage ^ request);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request);
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request);
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
override this.Send : System.Net.Http.HttpRequestMessage -> System.Net.Http.HttpResponseMessage
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("android")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
override this.Send : System.Net.Http.HttpRequestMessage -> System.Net.Http.HttpResponseMessage
override this.Send : System.Net.Http.HttpRequestMessage -> System.Net.Http.HttpResponseMessage
Public Function Send (request As HttpRequestMessage) As HttpResponseMessage
參數
- request
- HttpRequestMessage
HTTP 請求訊息要發送。
傳回
一個 HTTP 回應訊息。
- 屬性
例外狀況
request 是 null。
HTTP 版本為 2.0 或以上,或版本策略設定為 RequestVersionOrHigher。
-或-
由 HttpContent 衍生出的自訂類別不會覆蓋該方法。SerializeToStream(Stream, TransportContext, CancellationToken)
-或-
該習俗HttpMessageHandler不會覆蓋該方法。Send(HttpRequestMessage, CancellationToken)
請求訊息已經由實例發送 HttpClient 了。
請求失敗是因為無法取得有效的 HTTP 回應,例如網路連線失敗、DNS 故障、伺服器憑證驗證錯誤或伺服器回應無效。 在.NET 8及以後版本中,原因以HttpRequestError表示。
如果例外 OperationCanceledException 是巢狀的: TimeoutException請求因逾時而失敗。
適用於
Send(HttpRequestMessage, HttpCompletionOption)
發送 HTTP 請求。
public:
System::Net::Http::HttpResponseMessage ^ Send(System::Net::Http::HttpRequestMessage ^ request, System::Net::Http::HttpCompletionOption completionOption);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption);
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption);
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
override this.Send : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption -> System.Net.Http.HttpResponseMessage
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("android")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
override this.Send : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption -> System.Net.Http.HttpResponseMessage
override this.Send : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption -> System.Net.Http.HttpResponseMessage
Public Function Send (request As HttpRequestMessage, completionOption As HttpCompletionOption) As HttpResponseMessage
參數
- request
- HttpRequestMessage
HTTP 請求訊息要發送。
- completionOption
- HttpCompletionOption
其中一個列舉值,指定操作何時完成(當有回應可用時或讀取回應內容後)。
傳回
HTTP 回應消息。
- 屬性
例外狀況
request 是 null。
HTTP 版本為 2.0 或以上,或版本策略設定為 RequestVersionOrHigher。
-或-
由 HttpContent 衍生出的自訂類別不會覆蓋該方法。SerializeToStream(Stream, TransportContext, CancellationToken)
-或-
該習俗HttpMessageHandler不會覆蓋該方法。Send(HttpRequestMessage, CancellationToken)
請求訊息已經由實例發送 HttpClient 了。
請求失敗是因為無法取得有效的 HTTP 回應,例如網路連線失敗、DNS 故障、伺服器憑證驗證錯誤或伺服器回應無效。 在.NET 8及以後版本中,原因以HttpRequestError表示。
如果例外 OperationCanceledException 是巢狀的: TimeoutException請求因逾時而失敗。
適用於
Send(HttpRequestMessage, CancellationToken)
發送帶有指定請求與取消權杖的 HTTP 請求。
public:
override System::Net::Http::HttpResponseMessage ^ Send(System::Net::Http::HttpRequestMessage ^ request, System::Threading::CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public override System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public override System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken);
public override System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken);
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
override this.Send : System.Net.Http.HttpRequestMessage * System.Threading.CancellationToken -> System.Net.Http.HttpResponseMessage
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("android")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
override this.Send : System.Net.Http.HttpRequestMessage * System.Threading.CancellationToken -> System.Net.Http.HttpResponseMessage
override this.Send : System.Net.Http.HttpRequestMessage * System.Threading.CancellationToken -> System.Net.Http.HttpResponseMessage
Public Overrides Function Send (request As HttpRequestMessage, cancellationToken As CancellationToken) As HttpResponseMessage
參數
- request
- HttpRequestMessage
HTTP 請求訊息要發送。
- cancellationToken
- CancellationToken
取消操作的標記。
傳回
HTTP 回應消息。
- 屬性
例外狀況
request 是 null。
HTTP 版本為 2.0 或以上,或版本策略設定為 RequestVersionOrHigher。
-或-
由 HttpContent 衍生出的自訂類別不會覆蓋該方法。SerializeToStream(Stream, TransportContext, CancellationToken)
-或-
該習俗HttpMessageHandler不會覆蓋該方法。Send(HttpRequestMessage, CancellationToken)
請求訊息已經由實例發送 HttpClient 了。
請求失敗是因為無法取得有效的 HTTP 回應,例如網路連線失敗、DNS 故障、伺服器憑證驗證錯誤或伺服器回應無效。 在.NET 8及以後版本中,原因以HttpRequestError表示。
適用於
Send(HttpRequestMessage, HttpCompletionOption, CancellationToken)
發送包含指定請求、完成選項及取消標記的 HTTP 請求。
public:
System::Net::Http::HttpResponseMessage ^ Send(System::Net::Http::HttpRequestMessage ^ request, System::Net::Http::HttpCompletionOption completionOption, System::Threading::CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption, System.Threading.CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption, System.Threading.CancellationToken cancellationToken);
public System.Net.Http.HttpResponseMessage Send(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption, System.Threading.CancellationToken cancellationToken);
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
override this.Send : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption * System.Threading.CancellationToken -> System.Net.Http.HttpResponseMessage
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("android")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
override this.Send : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption * System.Threading.CancellationToken -> System.Net.Http.HttpResponseMessage
override this.Send : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption * System.Threading.CancellationToken -> System.Net.Http.HttpResponseMessage
Public Function Send (request As HttpRequestMessage, completionOption As HttpCompletionOption, cancellationToken As CancellationToken) As HttpResponseMessage
參數
- request
- HttpRequestMessage
HTTP 請求訊息要發送。
- completionOption
- HttpCompletionOption
其中一個列舉值,指定操作何時完成(當有回應可用時或讀取回應內容後)。
- cancellationToken
- CancellationToken
取消操作的標記。
傳回
HTTP 回應消息。
- 屬性
例外狀況
request 是 null。
HTTP 版本為 2.0 或以上,或版本策略設定為 RequestVersionOrHigher。
-或-
由 HttpContent 衍生出的自訂類別不會覆蓋該方法。SerializeToStream(Stream, TransportContext, CancellationToken)
-或-
該習俗HttpMessageHandler不會覆蓋該方法。Send(HttpRequestMessage, CancellationToken)
請求訊息已經由實例發送 HttpClient 了。
請求失敗是因為無法取得有效的 HTTP 回應,例如網路連線失敗、DNS 故障、伺服器憑證驗證錯誤或伺服器回應無效。 在.NET 8及以後版本中,原因以HttpRequestError表示。