TsgcHTTP2Client › Zdarzenia › OnHTTP2Authorization
Wywoływane, gdy serwer wymaga uwierzytelnienia, aby aplikacja mogła podać poświadczenia lub token bearer.
property OnHTTP2Authorization: TsgcHTTP2ClientAuthorizationEvent;
// TsgcHTTP2ClientAuthorizationEvent = procedure(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient; const AuthType, AuthData: String; var UserName, Password, Token: String; var Handled: Boolean) of object
—
OnHTTP2Authorization jest wywoływane gdy serwer zwraca wyzwanie uwierzytelniania (zazwyczaj odpowiedź 401), aby aplikacja mogła podać poświadczenia, które należy użyć do ponowienia żądania. AuthType raportuje schemat żądany przez serwer (na przykład Basic lub Bearer), a AuthData przenosi dodatkowe dane wyzwania wysłane wraz z nim. Należy ustawić UserName i Password dla uwierzytelnienia Basic lub Token dla przepływów Bearer/OAuth2, i ustawić Handled na True, aby klient ponownie wysłał żądanie z dostarczonymi poświadczeniami. Jeśli Handled pozostaje False, wyzwanie jest przekazywane do wywołującego jako normalna odpowiedź.
procedure OnHTTP2AuthorizationEvent(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient;
const AuthType, AuthData: String; var UserName, Password, Token: String; var Handled: Boolean);
begin
if SameText(AuthType, 'Basic') then
begin
UserName := 'user';
Password := 'secret';
Handled := True;
end
else if SameText(AuthType, 'Bearer') then
begin
Token := 'eyJhbGciOi...';
Handled := True;
end;
end;