Delen via


Algemene Azure Communication-clientbibliotheek voor JavaScript - versie 2.3.1

Dit pakket bevat algemene code voor Azure Communication Service-bibliotheken.

Aan de slag

Vereisten

Installeren

npm install @azure/communication-common

Browserondersteuning

JavaScript-bundel

Als u deze clientbibliotheek in de browser wilt gebruiken, moet u eerst een bundler gebruiken. Raadpleeg onze bundeldocumentatie voor meer informatie over hoe u dit doet.

Belangrijkste concepten

CommunicationTokenCredential en AzureCommunicationTokenCredential

De CommunicationTokenCredential is een interface die wordt gebruikt om een gebruiker te verifiëren met Communication Services, zoals Chatten of Bellen.

De AzureCommunicationTokenCredential biedt een handige manier om een referentie te maken die de genoemde interface implementeert en stelt u in staat om te profiteren van de ingebouwde logica voor automatisch vernieuwen.

Afhankelijk van uw scenario kunt u de AzureCommunicationTokenCredential initialiseren met:

  • een statisch token (geschikt voor clients met een korte levensduur die bijvoorbeeld worden gebruikt om eenmalige chatberichten te verzenden) of
  • een callback-functie die zorgt voor een continue verificatiestatus tijdens communicatie (ideaal bijvoorbeeld voor lange belsessies).

De tokens die aan de AzureCommunicationTokenCredential worden geleverd via de constructor of via de callback van de tokenvernieuwingsfunctie, kunnen worden verkregen met behulp van de Azure Communication Identity-bibliotheek.

Voorbeelden

Een referentie maken met een statisch token

Voor clients met een korte levensduur is het vernieuwen van het token bij het verlopen niet nodig en kan het AzureCommunicationTokenCredential worden geïnstantieerd met een statisch token.

const tokenCredential = new AzureCommunicationTokenCredential(
  "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjM2MDB9.adM-ddBZZlQ1WlN3pdPBOF5G4Wh9iZpxNP_fSvpF4cWs"
);

Een referentie maken met een callback

Hier gaan we ervan uit dat we een functie fetchTokenFromMyServerForUser hebben waarmee een netwerkaanvraag wordt ingediend om een JWT-tokentekenreeks voor een gebruiker op te halen. We geven deze door aan de referentie om een token voor Bob op te halen van onze eigen server. Onze server gebruikt de Azure Communication Identity-bibliotheek om tokens uit te geven. Het is noodzakelijk dat de fetchTokenFromMyServerForUser functie te allen tijde een geldig token retourneert (met een vervaldatum die in de toekomst is ingesteld).

const tokenCredential = new AzureCommunicationTokenCredential({
  tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
});

Een referentie maken met proactief vernieuwen

Als u op true instelt refreshProactively , wordt uw tokenRefresher functie aangeroepen wanneer het token bijna is verlopen.

const tokenCredential = new AzureCommunicationTokenCredential({
  tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
  refreshProactively: true,
});

Een referentie maken met proactief vernieuwen en een eerste token

Doorgeven initialToken is een optionele optimalisatie om de eerste aanroep naar over te tokenRefresherslaan. U kunt dit gebruiken om het opstarten van uw toepassing te scheiden van de volgende vernieuwingscycli van tokens.

const tokenCredential = new AzureCommunicationTokenCredential({
  tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
  refreshProactively: true,
  token:
    "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjM2MDB9.adM-ddBZZlQ1WlN3pdPBOF5G4Wh9iZpxNP_fSvpF4cWs",
});

Problemen oplossen

  • Ongeldig token opgegeven: zorg ervoor dat het token dat u doorgeeft aan de AzureCommunicationTokenCredential constructor of aan de tokenRefresher callback een lege JWT-tokentekenreeks is. Als u bijvoorbeeld de Azure Communication Identity-bibliotheek of REST API gebruikt om het token te verkrijgen, moet u ervoor zorgen dat u alleen het token deel van het antwoordobject doorgeeft.

Volgende stappen

Bijdragen

Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de handleiding voor bijdragen voor meer informatie over het bouwen en testen van de code.

Weergaven