Udostępnij za pośrednictwem


HttpWebRequest.PreAuthenticate Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy wysłać nagłówek autoryzacji z żądaniem.

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

Wartość właściwości

true wysłać nagłówek autoryzacji HTTP z żądaniami po uwierzytelnieniu; w przeciwnym razie false. Wartość domyślna to false.

Uwagi

Ostrożność

WebRequest, HttpWebRequest, ServicePointi WebClient są przestarzałe i nie należy ich używać do tworzenia nowych aplikacji. Zamiast tego użyj HttpClient.

Po pomyślnym uwierzytelnieniu żądania klienta do określonego Uri, jeśli PreAuthenticate jest true, a poświadczenia są dostarczane, nagłówek autoryzacji jest wysyłany z każdym żądaniem do dowolnego Uri zgodnego z określonym Uri do ostatniego ukośnika. Jeśli więc żądanie klienta pomyślnie uwierzytelniło się w określonej Uri, która zawiera następujące elementy:

http://www.contoso.com/firstpath/

Następnie nagłówek autoryzacji dla wstępnego uwierzytelniania jest wysyłany z każdym żądaniem do dowolnego z następujących Uri wystąpień:

http://www.contoso.com/firstpath/

http://www.contoso.com/firstpath/default

http://www.contoso.com/firstpath/default.html

http://www.contoso.com/firstpath/sample.html

Jednak nagłówek Autoryzacja nie jest wysyłany z żądaniami do żadnego z następujących wystąpień Uri:

http://www.contoso.com/

http://www.contoso.com/firstpath

http://www.contoso.com/secondpath/

http://www.contoso.com/firstpath/thirdpath/

Jeśli żądanie klienta do określonego Uri nie zostało pomyślnie uwierzytelnione, żądanie używa standardowych procedur uwierzytelniania.

Z wyjątkiem pierwszego żądania właściwość PreAuthenticate wskazuje, czy wysyłać informacje o uwierzytelnianiu z kolejnymi żądaniami do Uri pasujących do określonego Uri do ostatniego ukośnika do przodu bez oczekiwania na żądanie przez serwer.

Następujące okno dialogowe między klientem a serwerem ilustruje efekt tej właściwości. W oknie dialogowym założono, że jest używane uwierzytelnianie podstawowe.

PreAuthenticate jest false:

Klient: GET someUrl

Serwer: 401 WWW-Authenticate Basic

Klient: GET z nagłówkami autoryzacji

Serwer: 200 OK

Klient: GET someUrl

Serwer: 401 WWW-Authenticate Basic

Klient: GET z nagłówkami autoryzacji

Serwer: 200 OK

PreAuthenticate jest true:

Klient: GET someUrl

Serwer: 401 WWW-Authenticate Basic

Klient: GET z nagłówkami autoryzacji

Serwer: 200 OK

Klient: GET someUrl z nagłówkami autoryzacji

Jeśli schemat uwierzytelniania nie obsługuje wstępnego uwierzytelniania, wartość tej właściwości jest ignorowana.

Dotyczy