Vue d’ensemble
Laravel Bluesky prend en charge deux méthodes d’authentification. Après authentification, les appels d’API sont identiques dans les deux cas.Le nom
LegacyAgent désigne « la méthode d’authentification antérieure à OAuth », mais App Password lui-même n’est pas voué à disparaître. Pour les notifications ou les publications automatiques, sans intervention utilisateur, App Password est plus simple et mieux adapté.Architecture
BlueskyManager est l’implémentation réelle derrière la facade Bluesky. Après avoir configuré l’agent avec login() ou withToken(), les appels d’API utilisent les mêmes méthodes, quelle que soit la méthode d’authentification.
App Password (LegacyAgent)
Flux d’authentification
Bluesky::login()
Il suffit de configurer un App Password dans.env et d’appeler login().
Réutilisation d’une LegacySession
Appelerlogin() à chaque fois génère une requête API à chaque appel. Il est plus efficace de mettre la session en cache et de la réutiliser.
Principales clés de LegacySession
Cas d’usage adaptés
- Publication automatique via jobs en arrière-plan / files d’attente
- Notifications via un canal Laravel Notification
- Traitements batch, tâches planifiées
- Publication sous le compte de l’application elle-même
OAuth (OAuthAgent)
Flux d’authentification
Bluesky::withToken()
Passez àwithToken() l’OAuthSession obtenue via Socialite.
OAuthSession peut être reconstituée à partir des valeurs stockées en base.
Principales clés de OAuthSession
Cas d’usage adaptés
- Connexion utilisateur via Socialite
- Appels d’API au nom de l’utilisateur
- Opérations nécessitant un compte différent par utilisateur
Les appels d’API après authentification sont communs
Quelle que soit la méthode d’authentification, une foiswithToken() appelé, vous utilisez les mêmes méthodes d’API.
BlueskyManager sélectionne en interne LegacyAgent ou OAuthAgent, mais cela n’a aucun impact sur le code appelant.
Quelle méthode choisir ?
Liens utiles
- Basic client — Opérations API après authentification
- Socialite — Détails du flux OAuth
- Canal de notification — Notifications avec App Password / OAuth
- Source : invokable/laravel-bluesky