Token,也称动态密钥,是 app 用户在加入频道或登录服务系统时采用的一种鉴权方式。
本文展示如何使用 Agora 提供的代码在服务端生成 Token。
根据你使用的 Agora SDK,需要生成不同的 Token:
RTC Token:如果你使用的是 Agora RTC SDK、本地服务端录制 SDK、云端录制、实时码流加速 SDK 或互动游戏 SDK,则参考本文内容生成 RTC Token。
RTM Token:如果你使用的是 Agora 实时消息 SDK,则需要生成 RTM Token。详情请参考生成 RTM Token。
简介
Token 在你的业务服务端生成。用户加入频道或登录服务时,客户端需要向服务端申请 Token;服务器生成 Token 后,再将其传给客户端。
前提条件
开始前,请确保你的项目或使用的 Agora 产品满足如下条件:
你的 Agora 项目在控制台已开启 App 证书。
你所使用的 Agora 产品,满足如下版本要求:
产品
支持 Token 的版本
RTC SDK
Native SDK: v2.1.0 及以上
Web SDK: v2.4.0 及以上
第三方框架 SDK: 所有版本
本地服务端录制 SDK
v2.1.0 及以上
云端录制
无版本要求
实时码流
所有版本
互动游戏 SDK
v2.2.0 及以上
Token 代码说明
Agora 在 GitHub 提供一个开源的 AgoraDynamicKey 仓库,支持使用 C++、Java、Python、PHP、Ruby、Node.js、Go 等语言在你的服务端部署生成 Token。下图以 C++ 为例,展示生成 Token 代码的文件结构:
其中:
./sample/RtcTokenBuilderSample.cpp 文件包含用于生成 RTC Token 的示例代码。
./src/RtcTokenBuilder.h 文件包含用于生成 RTC Token 的 API 源代码。
使用示例代码快速生成 Token