Wspólna biblioteka klienta usługi Azure Communication dla języka JavaScript — wersja 2.3.1
Ten pakiet zawiera wspólny kod bibliotek usługi Azure Communication Service.
Wprowadzenie
Wymagania wstępne
- Subskrypcja platformy Azure.
- Istniejący zasób usług komunikacyjnych. Jeśli musisz utworzyć zasób, możesz użyć witryny Azure Portal, Azure PowerShell lub interfejsu wiersza polecenia platformy Azure.
Instalowanie
npm install @azure/communication-common
Obsługa przeglądarki
Pakiet JavaScript
Aby użyć tej biblioteki klienta w przeglądarce, najpierw musisz użyć pakietu. Aby uzyskać szczegółowe informacje na temat tego, jak to zrobić, zapoznaj się z naszą dokumentacją dotyczącą tworzenia pakietów.
Kluczowe pojęcia
CommunicationTokenCredential i AzureCommunicationTokenCredential
Jest CommunicationTokenCredential
to interfejs służący do uwierzytelniania użytkownika za pomocą usług komunikacyjnych, takich jak czat lub wywoływanie.
Oferuje AzureCommunicationTokenCredential
wygodny sposób tworzenia poświadczeń implementowania tego interfejsu i umożliwia korzystanie z wbudowanej logiki automatycznego odświeżania.
W zależności od scenariusza warto zainicjować polecenie AzureCommunicationTokenCredential
za pomocą polecenia :
- token statyczny (odpowiedni dla krótkoterminowych klientów używanych do wysyłania jednorazowych wiadomości czatu) lub
- funkcja wywołania zwrotnego, która zapewnia stan ciągłego uwierzytelniania podczas komunikacji (idealne, np. w przypadku długich sesji wywołujących).
Tokeny dostarczone do AzureCommunicationTokenCredential
konstruktora lub wywołania zwrotnego odświeżania tokenu można uzyskać przy użyciu biblioteki tożsamości usługi Azure Communication.
Przykłady
Tworzenie poświadczeń przy użyciu tokenu statycznego
W przypadku krótkoterminowych klientów odświeżanie tokenu po wygaśnięciu nie jest konieczne i AzureCommunicationTokenCredential
może zostać utworzone za pomocą tokenu statycznego.
const tokenCredential = new AzureCommunicationTokenCredential(
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjM2MDB9.adM-ddBZZlQ1WlN3pdPBOF5G4Wh9iZpxNP_fSvpF4cWs"
);
Tworzenie poświadczeń za pomocą wywołania zwrotnego
W tym miejscu przyjęto założenie, że mamy funkcję fetchTokenFromMyServerForUser
, która wysyła żądanie sieciowe do pobrania ciągu tokenu JWT dla użytkownika. Przekazujemy go do poświadczeń, aby pobrać token dla Boba z własnego serwera. Nasz serwer będzie używać biblioteki tożsamości usługi Azure Communication do wystawiania tokenów. fetchTokenFromMyServerForUser
Funkcja zwraca prawidłowy token (z datą wygaśnięcia ustawioną w przyszłości) przez cały czas.
const tokenCredential = new AzureCommunicationTokenCredential({
tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
});
Tworzenie poświadczeń z proaktywnym odświeżaniem
Ustawienie refreshProactively
wartości true spowoduje wywołanie tokenRefresher
funkcji, gdy token jest bliski wygaśnięcia.
const tokenCredential = new AzureCommunicationTokenCredential({
tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
refreshProactively: true,
});
Tworzenie poświadczeń z proaktywnym odświeżaniem i tokenem początkowym
Przekazywanie initialToken
to opcjonalna optymalizacja pozwalająca pominąć pierwsze wywołanie metody tokenRefresher
. Można go użyć do oddzielenia rozruchu od aplikacji z kolejnych cykli odświeżania tokenu.
const tokenCredential = new AzureCommunicationTokenCredential({
tokenRefresher: async () => fetchTokenFromMyServerForUser("bob@contoso.com"),
refreshProactively: true,
token:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjM2MDB9.adM-ddBZZlQ1WlN3pdPBOF5G4Wh9iZpxNP_fSvpF4cWs",
});
Rozwiązywanie problemów
- Określony nieprawidłowy token: upewnij się, że token przekazywany do konstruktora
AzureCommunicationTokenCredential
lub wywołania zwrotnego to bezskutecznie ciąg tokenutokenRefresher
JWT. Jeśli na przykład używasz biblioteki tożsamości usługi Azure Communication lub interfejsu API REST do uzyskania tokenu, upewnij się, że przekazujesz tylkotoken
część obiektu odpowiedzi.
Następne kroki
Współtworzenie
Jeśli chcesz współtworzyć tę bibliotekę, przeczytaj przewodnik współtworzenia , aby dowiedzieć się więcej na temat sposobu kompilowania i testowania kodu.
Powiązane projekty
Azure SDK for JavaScript