HttpClientHandler.AllowAutoRedirect プロパティ

定義

ハンドラーがリダイレクト応答に従うかどうかを示す値を取得または設定します。

public:
 property bool AllowAutoRedirect { bool get(); void set(bool value); };
public bool AllowAutoRedirect { get; set; }
member this.AllowAutoRedirect : bool with get, set
Public Property AllowAutoRedirect As Boolean

プロパティ値

true ハンドラーがリダイレクト応答に従う必要がある場合は 。それ以外の場合 falseは 。 既定値は true です。

注釈

ハンドラーが true HTTP リダイレクト ヘッダーに自動的に従ってリソースの新しい場所に移動する場合は、 を に設定AllowAutoRedirectします。 後続するリダイレクトの最大数は、 プロパティによって設定されます MaxAutomaticRedirections

が にfalse設定されている場合AllowAutoRedirect、HTTP 状態コードが 300 から 399 のすべての HTTP 応答がアプリケーションに返されます。

自動リダイレクトでは Authorization ヘッダーがクリアされ、ハンドラーはリダイレクトされた場所に対して自動的に再認証を試みます。 他のヘッダーはクリアされません。 実際には、リダイレクトが発生する可能性がある場合、アプリケーションは Authorization ヘッダーにカスタム認証情報を配置できないことを意味します。 代わりに、アプリケーションでカスタム認証モジュールを実装して登録する必要があります。

Cookie を特にコレクションに Headers 追加して Cookie を使用している場合、リダイレクトのフォロー時にこれらの Cookie はクリアされません。これは、ハンドラーが Cookie が許可されているドメインを知る方法がないためです。 ブラウザーの動作を模倣する場合は、 クラスを CookieContainer 使用して、Cookie のターゲット ドメインを指定できます。

注意

を にtrue設定するとAllowAutoRedirect、HTTPS URI から HTTP URI にリダイレクトされた場合でも、.NET Frameworkはリダイレクトに従います。 .NET Core バージョン 1.0、1.1、および 2.0 は、 が に設定されている場合 AllowAutoRedirect でも、HTTPS から HTTP へのリダイレクトに true従いません。

適用対象