TsgcHTTP2Client | Authentification client

Le client HTTP/2 prend en charge 2 types d'authentification : l'authentification Basic et l'authentification OAuth2.

 

Utilisez l'événement OnHTTP2Authorization pour gérer les deux types d'authentification.

 

Authentification de base

Si le serveur renvoie un en-tête demandant une authentification Basic, définissez le nom d'utilisateur et le mot de passe dans OnHTTP2Authorization.

 


oClient := TsgcHTTP2Client.Create(nil);
oClient.OnHTTP2Authorization := OnHTTP2AuthorizationEvent;
...
procedure OnHTTP2AuthorizationEvent(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient; const AuthType, AuthData: string; var UserName, Password, aToken: string; var Handled: Boolean);
begin
  if AuthType = 'Basic' then
  begin
    UserName := 'user';
	Password := 'secret';
  end;
end;

Jeton porteur

Si le serveur retourne un en-tête demandant l'authentification par Bearer Token, définissez le jeton dans OnHTTP2Authorization.

 


oClient := TsgcHTTP2Client.Create(nil);
oClient.OnHTTP2Authorization := OnHTTP2AuthorizationEvent;
...
procedure OnHTTP2AuthorizationEvent(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient; const AuthType, AuthData: string; var UserName, Password, aToken: string; var Handled: Boolean);
begin
  if AuthType = 'Bearer' then
  begin
    aToken := 'bearer token';
  end;
end;

Valeur Bearer provenant d'un tiers

Si vous connaissez déjà la valeur Bearer, parce que vous l'avez obtenue par une autre méthode, vous pouvez passer la valeur Bearer en tant qu'en-tête HTTP en utilisant les propriétés suivantes de la requête, à définir avant d'appeler toute méthode de requête HTTP :

 

 TsgcHTTP2Client.Request.BearerAuthentication 
 = true

TsgcHTTP2Client.Request.BearerToken = "< value of the token >"

 

OAuth2

Lisez l'article suivant si vous souhaitez utiliser notre composant OAuth2 avec le client HTTP/2.