Bibliothèque de client Azure Communication Common pour JavaScript - version 2.3.1
Ce package contient du code commun pour les bibliothèques Azure Communication Service.
Prise en main
Prérequis
- Un abonnement Azure.
- Une ressource Communication Services existante. Si vous avez besoin de créer la ressource, vous pouvez utiliser le portail Azure, le Azure PowerShell ou Azure CLI.
Installation de
npm install @azure/communication-common
Prise en charge des navigateurs
Ensemble JavaScript
Pour utiliser cette bibliothèque cliente dans le navigateur, vous devez d’abord utiliser un bundler. Pour plus d’informations sur la façon de procéder, reportez-vous à notre documentation sur le regroupement.
Concepts clés
CommunicationTokenCredential et AzureCommunicationTokenCredential
Est CommunicationTokenCredential
une interface utilisée pour authentifier un utilisateur auprès de Communication Services, comme la conversation ou l’appel.
Le AzureCommunicationTokenCredential
offre un moyen pratique de créer des informations d’identification implémentant ladite interface et vous permet de tirer parti de la logique d’actualisation automatique intégrée.
Selon votre scénario, vous pouvez initialiser le AzureCommunicationTokenCredential
avec :
- un jeton statique (adapté aux clients de courte durée utilisés pour envoyer des messages de conversation ponctuels, par exemple) ou
- une fonction de rappel qui garantit un état d’authentification continue pendant les communications (idéal par exemple pour les sessions d’appel longues).
Les jetons fournis au par le biais du constructeur ou du rappel de l’actualisation de jeton peuvent être obtenus à l’aide AzureCommunicationTokenCredential
de la bibliothèque Azure Communication Identity.
Exemples
Créer des informations d’identification avec un jeton statique
Pour les clients de courte durée, l’actualisation du jeton à l’expiration n’est pas nécessaire et peut AzureCommunicationTokenCredential
être instanciée avec un jeton statique.
const tokenCredential = new AzureCommunicationTokenCredential(
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjM2MDB9.adM-ddBZZlQ1WlN3pdPBOF5G4Wh9iZpxNP_fSvpF4cWs"
);
Créer des informations d’identification avec un rappel
Ici, nous supposons que nous avons une fonction fetchTokenFromMyServerForUser
qui effectue une demande réseau pour récupérer une chaîne de jeton JWT pour un utilisateur. Nous le transmettons aux informations d’identification pour récupérer un jeton pour Bob à partir de notre propre serveur. Notre serveur utiliserait la bibliothèque Azure Communication Identity pour émettre des jetons. Il est nécessaire que la fetchTokenFromMyServerForUser
fonction retourne un jeton valide (avec une date d’expiration définie à l’avenir) à tout moment.
const tokenCredential = new AzureCommunicationTokenCredential({
tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
});
Créer des informations d’identification avec une actualisation proactive
La définition de refreshProactively
la valeur true appelle votre tokenRefresher
fonction lorsque le jeton est proche de l’expiration.
const tokenCredential = new AzureCommunicationTokenCredential({
tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
refreshProactively: true,
});
Créer des informations d’identification avec une actualisation proactive et un jeton initial
Le passage initialToken
est une optimisation facultative pour ignorer le premier appel à tokenRefresher
. Vous pouvez l’utiliser pour séparer le démarrage de votre application des cycles d’actualisation de jeton suivants.
const tokenCredential = new AzureCommunicationTokenCredential({
tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
refreshProactively: true,
token:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjM2MDB9.adM-ddBZZlQ1WlN3pdPBOF5G4Wh9iZpxNP_fSvpF4cWs",
});
Dépannage
- Jeton non valide spécifié : assurez-vous que le jeton que vous passez au
AzureCommunicationTokenCredential
constructeur ou autokenRefresher
rappel est une chaîne de jeton JWT nue. Par exemple, si vous utilisez la bibliothèque Azure Communication Identity ou l’API REST pour obtenir le jeton, assurez-vous de transmettre uniquement latoken
partie de l’objet de réponse.
Étapes suivantes
Contribution
Si vous souhaitez contribuer à cette bibliothèque, lisez le guide de contribution pour en savoir plus sur la génération et le test du code.
Projets associés
Azure SDK for JavaScript