技术咨询:如何从Agora.io获取用户UID?
获取Agora.io视频通话中的UID
Agora为用户分配的UID分为自行指定和自动分配两种场景,获取方式如下:
1. 自动分配UID的获取
当调用joinChannel时不传入自定义UID,Agora会自动生成一个随机UID,你可以通过两种方式获取:
- 回调获取:监听
joinChannelSuccess(不同平台SDK的回调名称可能略有差异),该回调会直接返回当前用户的UID。 - 主动调用方法获取:使用SDK提供的
getUid类方法(比如Web端为client.getUid(),Native端对应方法名类似),直接获取当前已加入频道用户的UID。
示例代码(Web端)
const client = AgoraRTC.createClient({ mode: 'rtc', codec: 'h264' }); // 通过回调获取UID client.on('joinChannelSuccess', (uid, elapsed) => { console.log(`已加入频道,UID: ${uid}`); }); // 加入频道(不指定UID,由Agora自动分配) client.join('<你的App ID>', '<频道名称>', '<临时Token>', null).then(() => { // 主动调用方法获取UID const myUid = client.getUid(); console.log(`当前用户UID: ${myUid}`); });
2. 自行指定UID的情况
如果调用joinChannel时主动传入了自定义UID,你直接使用自己传入的这个值即可,无需额外获取。
注意事项
- 若使用Token认证,自动分配UID时,生成Token可使用
0作为UID参数;自行指定UID时,Token必须与该UID匹配。 - 确保使用的SDK为最新稳定版,避免方法或回调名称的版本差异。
内容的提问来源于stack exchange,提问作者Benjamin Telford
相关产品推荐
相关产品推荐

