Agora.io 生成的令牌无效(C#/Angular)
Posted
技术标签:
【中文标题】Agora.io 生成的令牌无效(C#/Angular)【英文标题】:Agora.io generated token invalid ( C# / Angular ) 【发布时间】:2020-08-10 19:11:02 【问题描述】:我正在尝试使用使用 C# 生成的令牌让 Angular 组件加入 Agora 视频通话。
当使用特定的 UID 而不是“0”(全部允许)时,生成的令牌会失败并出现以下错误:
错误:未捕获(承诺中):AgoraRTCError CAN_NOT_GET_GATEWAY_SERVER:无效令牌,授权失败数据:“retry”:false
令牌是使用 C# 和来自 Github 存储库https://github.com/AgoraIO/Tools/tree/master/DynamicKey/AgoraDynamicKey/csharp/src/AgoraIO 的代码生成的
var token = new AgoraIO.Media.AccessToken(AGORA_APPID, AGORA_CERT, channelHash, userId);
AGORA_APPID
是应用 ID,AGORA_CERT
是证书,channelHash
是通道的哈希值,userId
是 guid。
Token 然后被 Angular 组件检索,并用于加入频道,使用 AgoraWebSDK-NG typescript SDK。
使用未指定的 UID(创建期间为 0,加入期间为 null)可以正常工作,因此 AppId、Cert 和 channelHash 可能很好。
使用指定的 UID,无论是数字还是字母,都会导致无效令牌错误。
有人知道可能出了什么问题吗?
【问题讨论】:
【参考方案1】:抱歉打扰了,深夜才弄明白的。我不相信自己的输入,我发现我对频道名称使用了不同的哈希方法...
【讨论】:
有什么解决办法? 解决方案是:确保我使用相同的哈希方法...这是我自己的代码有问题,我搞砸了。 啊,好吧,我误解了。谢谢 @Ulli:我目前面临着类似的问题。我使用与 github 存储库中完全相同的代码库来生成我的令牌,但它不起作用。您介意分享您的解决方案或代码的 sn-p 吗?谢谢以上是关于Agora.io 生成的令牌无效(C#/Angular)的主要内容,如果未能解决你的问题,请参考以下文章
用于 android kotlin 的 agora io 1on 1 视频聊天在 firebase 中生成令牌