Поделиться через


HttpWebRequest.PreAuthenticate Свойство

Определение

Возвращает или задает значение, указывающее, следует ли отправлять заголовок авторизации с запросом.

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

Значение свойства

true для отправки заголовка авторизации HTTP с запросами после проверки подлинности; falseв противном случае . Значение по умолчанию — false.

Комментарии

Осторожность

WebRequest, HttpWebRequest, ServicePointи устарели, и WebClient вы не должны использовать их для новой разработки. Вместо этого используйте HttpClient.

После успешной проверки подлинности запроса клиента к определенной Uri учетной записи, если truePreAuthenticate заданы учетные данные, заголовок авторизации отправляется каждому запросуUri, который соответствует определенной Uri косой черте до последней косой черты. Таким образом, если запрос клиента успешно прошел проверку подлинности в определенном объекте Uri , который содержит следующее:

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

Затем заголовок авторизации для предварительной проверки подлинности отправляется с каждым запросом в любой из следующих Uri экземпляров:

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

Однако заголовок авторизации не отправляется с запросами на любой из следующих Uri экземпляров:

http://www.contoso.com/

http://www.contoso.com/firstpath

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

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

Если запрос клиента к определенному объекту Uri не прошел проверку подлинности, запрос использует стандартные процедуры проверки подлинности.

За исключением первого запроса PreAuthenticate , свойство указывает, следует ли отправлять данные проверки подлинности с последующими запросами Uri на косую черту, которая соответствует определенной Uri косой черте до последней косой черты, не ожидая вызова сервером.

В следующем диалоговом окне между клиентом и сервером показан эффект этого свойства. В диалоговом окне предполагается, что используется базовая проверка подлинности.

PreAuthenticate is false:

Клиент: GET someUrl

Сервер: 401 WWW-Authenticate Базовый

Клиент: GET с заголовками авторизации

Сервер: 200 OK

Клиент: GET someUrl

Сервер: 401 WWW-Authenticate Базовый

Клиент: GET с заголовками авторизации

Сервер: 200 OK

PreAuthenticate is true:

Клиент: GET someUrl

Сервер: 401 WWW-Authenticate Базовый

Клиент: GET с заголовками авторизации

Сервер: 200 OK

Клиент: GET someUrl с заголовками авторизации

Если схема проверки подлинности не поддерживает предварительную проверку подлинности, значение этого свойства игнорируется.

Применяется к