В мире разработки программного обеспечения и интеграции API токены обычно используются для целей аутентификации и авторизации. Токены Agora не являются исключением. Эти токены обеспечивают безопасный доступ к мощным службам связи Agora в режиме реального времени, но у них есть срок действия. В этом сообщении блога мы рассмотрим различные способы продления токенов Agora, обеспечивая бесперебойный доступ к их услугам.
Метод 1: обновление токена на стороне сервера с использованием Agora SDK
Одним из распространенных подходов является реализация обновления токенов на стороне сервера с использованием SDK Agora. Этот метод предполагает создание нового токена на сервере до истечения срока действия существующего токена и предоставление его клиенту. Давайте рассмотрим пример с использованием Node.js и Agora SDK для Node.js:
const agora = require('agora-access-token');
// Generate a new token
const renewalToken = agora.RtcTokenBuilder.buildTokenWithAccount(
'<YOUR_APP_ID>',
'<YOUR_APP_CERTIFICATE>',
'<USER_ACCOUNT>',
agora.RtcRole.PUBLISHER,
<TOKEN_EXPIRATION_TIME>
);
// Send the new token to the client
// ... (implementation varies based on your server architecture)
Метод 2. Обновление токена на стороне клиента с помощью токенов обновления
Другой подход — использовать токены обновления на стороне клиента для обновления токенов Agora без участия сервера. Токены обновления — это долгосрочные токены, которые можно использовать для получения новых недолговечных токенов. Вот пример использования JavaScript и гипотетического refreshToken
:
function renewToken(refreshToken) {
// Send the refresh token to your server
// ... (implementation varies based on your server architecture)
// Server generates a new Agora token using the refresh token
const newToken = generateTokenWithRefreshToken(refreshToken);
// Use the new token for Agora API calls
AgoraRTC.init('<YOUR_APP_ID>');
AgoraRTC.joinChannel(newToken, '<CHANNEL_NAME>', null, (uid) => {
console.log('Joined channel with renewed token');
});
}
Метод 3. Обновление токена с использованием Agora RESTful API
Agora предоставляет RESTful API, который позволяет программно генерировать токены. Вы можете использовать этот API для обновления токенов по требованию. Вот пример использования cURL:
curl -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Basic <YOUR_API_KEY>' \
-d '{
"app_id": "<YOUR_APP_ID>",
"uid": "<USER_ID>",
"expire": <TOKEN_EXPIRATION_TIME>
}' \
https://api.agora.io/v1/token
Обновление токенов Agora имеет решающее значение для обеспечения бесперебойного доступа к услугам связи Agora в режиме реального времени. В этой статье мы рассмотрели три метода: обновление токена на стороне сервера с использованием Agora SDK, обновление токена на стороне клиента с помощью токенов обновления и обновление токена с использованием RESTful API Agora. Каждый метод обеспечивает гибкость в зависимости от требований вашего приложения. Внедрив эти методы, вы можете продлить срок действия токенов Agora и обеспечить беспрепятственное общение с вашими пользователями в режиме реального времени.