OAuth 2.0 Client
Komponent klienta OAuth 2.0 / OAuth 2.1 — Authorization Code z PKCE, Client Credentials, Device Code, rotacja tokenów odświeżania i wbudowany przepływ przeglądarki.
Komponent klienta OAuth 2.0 / OAuth 2.1 — Authorization Code z PKCE, Client Credentials, Device Code, rotacja tokenów odświeżania i wbudowany przepływ przeglądarki.
Implementuje stronę klienta OAuth 2.0 / 2.1 — obsługuje przepływy Authorization Code (z PKCE), Client Credentials, Device Code i tokenów odświeżania. Zawiera wbudowany mały nasłuchiwacz HTTP dla URI przekierowania.
TsgcHTTP_OAuth2_Client
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Skonfiguruj ClientId / ClientSecret / Scope / Endpoints (lub użyj presetu dostawcy dla Google / Microsoft / GitHub), wywołaj StartAuthorization, a następnie użyj Token w swoich wywołaniach 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();
Implementuje interfejs klienta OAuth 2.0 z PKCE, rotacją tokenów odświeżania i wbudowanym nasłuchiwaczem przekierowania loopback.
Authorization Code (z opcjonalnym PKCE wg RFC 7636), Client Credentials (RFC 6749 §4.4), Device Code (RFC 8628) i Refresh Token (RFC 6749 §6) są obsługiwane jako typowane metody.
Włącz OAuth2Options.PKCE — komponent generuje parę code_verifier / code_challenge i dołącza je zgodnie z RFC 7636 (obowiązkowe w OAuth 2.1).
Komponenty pochodne TsgcHTTP_OAuth2_Client_Google i TsgcHTTP_OAuth2_Client_Microsoft dostarczane są z wstępnie wypełnionymi właściwymi punktami końcowymi i zakresami. Do pozostałych dostawców użyj klasy bazowej.
Komponent uruchamia mały wbudowany nasłuchiwacz HTTP na skonfigurowanym RedirectURL, przechwytuje kod autoryzacji, a następnie zatrzymuje nasłuchiwacz — nie jest wymagany zewnętrzny serwer WWW.
SaveToFile / LoadFromFile zapisują token odświeżania (szyfrowany w spoczynku, jeśli skonfigurowano), dzięki czemu użytkownik nie jest pytany przy każdym uruchomieniu aplikacji.
Połącz z TsgcHTTPComponentClient, TsgcHTTP2Client lub TsgcWebSocketClient przez Authentication.Token.OAuth2 — token bearer jest wstrzykiwany automatycznie w każdym żądaniu.
Autorytatywne źródła standardów implementowanych przez ten komponent.
Przejdź bezpośrednio do dokumentacji komponentu, pobierz gotowy do uruchomienia projekt demonstracyjny i pobierz wersję próbną.
| Pomoc online — TsgcHTTP_OAuth2_Client Pełna dokumentacja właściwości, metod i zdarzeń tego komponentu. | Otwórz | |
| Projekt demonstracyjny — Demos\20.HTTP_Protocol\02.OAuth2_Authentication Gotowy do uruchomienia projekt przykładowy. Dostarczany w pakiecie sgcWebSockets — pobierz wersję próbną poniżej. | Otwórz | |
| Dokument techniczny (PDF) Funkcje, szybki start, przykłady kodu dla Delphi i C++ Builder oraz odniesienia do źródeł — tylko ten komponent. | Otwórz | |
| Podręcznik użytkownika (PDF) Kompleksowy podręcznik obejmujący każdy komponent biblioteki. | Otwórz |