Client OAuth 2.0
Composant client OAuth 2.0 / OAuth 2.1 — Authorization Code avec PKCE, Client Credentials, Device Code, rotation des refresh tokens et flow navigateur intégré.
Composant client OAuth 2.0 / OAuth 2.1 — Authorization Code avec PKCE, Client Credentials, Device Code, rotation des refresh tokens et flow navigateur intégré.
Implémente le côté client OAuth 2.0 / 2.1 — couvre les flows Authorization Code (avec PKCE), Client Credentials, Device Code et refresh-token. Inclut un petit listener HTTP embarqué pour l'URI de redirection.
TsgcHTTP_OAuth2_Client
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Configure ClientId / ClientSecret / Scope / Endpoints (ou utilise un preset Provider pour Google / Microsoft / GitHub), appelle StartAuthorization, puis utilise Token dans tes appels HTTP.
uses
sgcHTTP;
var
OAuth2: TsgcHTTP_OAuth2_Client;
begin
OAuth2 := TsgcHTTP_OAuth2_Client.Create(nil);
OAuth2.OAuth2Options.ClientId := 'your-client-id';
OAuth2.OAuth2Options.ClientSecret := 'your-client-secret';
OAuth2.OAuth2Options.Scope := 'profile email';
OAuth2.OAuth2Options.RedirectURL := 'http://localhost:5555/callback';
OAuth2.OAuth2Options.AuthorizationURL := 'https://auth.example.com/authorize';
OAuth2.OAuth2Options.TokenURL := 'https://auth.example.com/token';
OAuth2.OAuth2Options.PKCE := True;
// Spawns the user browser at the auth URL
OAuth2.StartAuthorization;
// ... user logs in, browser is redirected to the callback URL
// ... the component captures the code, exchanges for tokens
ShowMessage(OAuth2.AccessToken);
end;
// uses: sgcHTTP
TsgcHTTP_OAuth2_Client *OAuth2 = new TsgcHTTP_OAuth2_Client(this);
OAuth2->OAuth2Options->ClientId = "your-client-id";
OAuth2->OAuth2Options->ClientSecret = "your-client-secret";
OAuth2->OAuth2Options->Scope = "profile email";
OAuth2->OAuth2Options->RedirectURL = "http://localhost:5555/callback";
OAuth2->OAuth2Options->PKCE = true;
OAuth2->StartAuthorization();
Implémente la surface client OAuth 2.0 avec PKCE, rotation des refresh tokens et un listener loopback de redirection embarqué.
Authorization Code (avec PKCE optionnel selon la RFC 7636), Client Credentials (RFC 6749 §4.4), Device Code (RFC 8628) et Refresh Token (RFC 6749 §6) sont tous pris en charge sous forme de méthodes typées.
Bascule OAuth2Options.PKCE — le composant génère la paire code_verifier / code_challenge et les inclut selon la RFC 7636 (obligatoire en OAuth 2.1).
Les composants frères TsgcHTTP_OAuth2_Client_Google et TsgcHTTP_OAuth2_Client_Microsoft arrivent avec les bons endpoints et scopes pré-remplis. Utilise la classe de base pour tous les autres.
Le composant démarre un petit listener HTTP embarqué sur la RedirectURL configurée, capture le code d'autorisation, puis ferme le listener — aucun serveur web externe requis.
SaveToFile / LoadFromFile persistent le refresh token (chiffré au repos si configuré) pour ne pas reposer la question à l'utilisateur à chaque lancement.
Associe à TsgcHTTPComponentClient, TsgcHTTP2Client ou TsgcWebSocketClient via Authentication.Token.OAuth2 — le token bearer est injecté automatiquement à chaque requête.
Sources de référence pour les standards implémentés par ce composant.
Lien direct vers la référence du composant, récupère le projet de démo prêt à exécuter et télécharge l’essai.
| Aide en ligne — TsgcHTTP_OAuth2_Client Référence complète des propriétés, méthodes et événements de ce composant. | Ouvrir | |
| Projet de démo — Demos\20.HTTP_Protocol\02.OAuth2_Authentication Projet d’exemple prêt à exécuter. Livré dans le paquet sgcWebSockets — télécharge l’essai ci-dessous. | Ouvrir | |
| Document technique (PDF) Features, quick start, code samples for Delphi & C++ Builder and primary-source references — this component only. | Ouvrir | |
| Manuel utilisateur (PDF) Manuel exhaustif couvrant chaque composant de la bibliothèque. | Ouvrir |