TsgcHTTP2Client › Eventos › OnHTTP2Authorization
Dispara quando o servidor requer autenticação para que a aplicação possa fornecer credenciais ou um 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 é gerado quando o servidor retorna um desafio de autenticação (normalmente uma resposta 401) para que a aplicação possa fornecer as credenciais a serem utilizadas para repetir a requisição. AuthType reporta o esquema solicitado pelo servidor (por exemplo, Basic ou Bearer) e AuthData carrega os dados extras do desafio enviados com ele. Defina UserName e Password para autenticação Basic, ou Token para fluxos Bearer / OAuth2, e defina Handled como True para que o cliente reenvie a requisição com as credenciais fornecidas. Se Handled permanecer False, o desafio é propagado ao chamador como uma resposta normal.
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;