Passer au contenu principal
Ce module fournit des fonctionnalités d’authentification OAuth2 PKCE (Proof Key for Code Exchange) pour des flux d’autorisation sécurisés. Il inclut la génération du code_verifier, la gestion des jetons et le rafraîchissement automatique des jetons.

class xdk.oauth2_auth.OAuth2PKCEAuth

Authentification OAuth2 PKCE pour l’API X.

Paramètres

path.base_url
str
défaut:"'https://api.x.com'"
path.authorization_base_url
str
défaut:"'https://x.com/i'"
path.client_id
str or None
défaut:"None"
path.client_secret
str or None
défaut:"None"
path.redirect_uri
str or None
défaut:"None"
path.token
Dict[str, Any] or None
défaut:"None"
path.scope
str or List[str] or None
défaut:"None"

__init__

Initialise l’authentification OAuth2 avec PKCE.

Paramètres

path.base_url
str
défaut:"'https://api.x.com'"
L’URL de base du point de terminaison de jeton de X API (par défaut : https://api.x.com).
path.authorization_base_url
str
défaut:"'https://x.com/i'"
L’URL de base pour l’autorisation OAuth2 (par défaut : https://x.com/i).
path.client_id
str or None
défaut:"None"
L’ID client pour X API.
path.client_secret
str or None
défaut:"None"
Le secret client pour X API.
path.redirect_uri
str or None
défaut:"None"
L’URI de redirection pour l’autorisation OAuth2.
path.token
Dict[str, Any] or None
défaut:"None"
Un dictionnaire de jetons OAuth2 existant (le cas échéant).
path.scope
str or List[str] or None
défaut:"None"
Chaîne séparée par des espaces ou liste de chaînes pour les étendues (scopes) d’autorisation OAuth2.

exchange_code

Échanger un code d’autorisation contre des jetons (équivaut à l’API TypeScript).

Paramètres

path.code
str
Le code d’autorisation reçu dans le callback.
path.code_verifier
str or None
défaut:"None"
code_verifier facultatif (utilise le code_verifier stocké s’il n’est pas fourni).

Renvoie

Dictstr, Any

fetch_token

Récupère le jeton en utilisant l’URL de réponse d’autorisation (ancienne méthode, utilise exchange_code en interne).

Paramètres

path.authorization_response
str
L’URL de redirection complète reçue après l’autorisation

Renvoie

Dictstr, Any

get_authorization_url

Renvoie l’URL d’autorisation pour le flux OAuth2 PKCE.

Paramètres

path.state
str or None
défaut:"None"
Paramètre state facultatif à des fins de sécurité.

Retourne

str

get_code_challenge

Récupère le code challenge actuel (pour PKCE). :returns: Renvoie le code challenge actuel, ou None s’il n’est pas défini. :rtype: Optional[str]

Renvoie

str | None

get_code_verifier

Renvoie le code verifier actuel (pour PKCE). :returns: Le code verifier actuel, ou None s’il n’est pas défini. :rtype: Optional[str]

Renvoie

str | None

is_token_expired

Vérifie si le jeton a expiré. :returns: True si le jeton a expiré, False sinon. :rtype: bool

Retourne

bool

refresh_token

Rafraîchit le jeton d’accès. :returns: Le dictionnaire du jeton rafraîchi :rtype: Dict[str, Any]

Renvoie

Dictstr, Any

set_pkce_parameters

Définit manuellement les paramètres PKCE.

Paramètres

path.code_verifier
str
Le code_verifier à utiliser.
path.code_challenge
str or None
défaut:"None"
code_challenge facultatif (sera généré s’il n’est pas fourni).