我正在尝试使用使用C#生成的令牌来获取Angular组件以加入Agora视频通话。
当使用特定的UID而不是“ 0”(允许全部)时,生成的令牌会失败,并显示以下错误:
错误:未捕获(承诺):AgoraRTCError CAN_NOT_GET_GATEWAY_SERVER:无效的令牌,授权的失败数据:{“ retry”:false}
令牌是使用C#和来自https://github.com/AgoraIO/Tools/tree/master/DynamicKey/AgoraDynamicKey/csharp/src/AgoraIO的Github存储库中的代码生成的
by=
其中var token = new AgoraIO.Media.AccessToken(AGORA_APPID, AGORA_CERT, channelHash, userId);
是应用程序ID,AGORA_APPID
是证书,AGORA_CERT
是频道的哈希值,而channelHash
是GUID。
然后通过Angular组件检索令牌,并使用AgoraWebSDK-NG打字稿SDK将其用于加入频道。
使用未指定的UID(在创建过程中为0,在连接过程中为null)可以很好地工作,因此AppId,Cert和channelHash可能很好。
使用数字或字母的指定UID会导致无效的令牌错误。
有人知道什么地方可能出问题吗?
答案 0 :(得分:2)
对不起,我打扰了,深夜想通了。我不敢相信自己的输入,因此发现我对频道名称使用了不同的哈希方法...