我正在尝试在Android上构建聊天应用程序,而且我已经迈出了第一步。我无法创建ChatClient。根据文档,我应该调用这样的方法:
ChatClient.create(context.getApplicationContext(), token, props, myCallback);
不幸的是我收到错误:“无效的访问令牌授予”,您可以查看此link以获取错误详细信息。
我已经验证了我的jwt访问令牌中的内容,似乎所有内容都可以使用授权。我已经使用https://jwt.io/调试器来测试它并且可以看到以下有效负载(我已经破坏了我的凭据以仅显示结构):
{ "iss": "SK####################",
"exp": 1516198358,
"jti": "SK#####################",
"sub": "######################",
"grants": {
"identity": "test.user@mail.com",
"chat": {
"service_sid": "###################",
"endpoint_id": "###################"
}
}
}
我已经检查了所有的值,它们似乎没问题,我也尝试复制此令牌并将其传递给我的网络(JS)项目并且能够登录而没有任何证明令牌本身的问题应该可以。
感谢任何帮助,谢谢
答案 0 :(得分:1)
请不要使用" endpoint_id"在授权中,它已被弃用,可能会抛弃一些服务验证逻辑。
如果您继续收到此错误,请与support.twilio.com联系并提供adb日志和令牌本身(请勿在此处公开粘贴)。另请参阅https://github.com/twilio/twilio-chat-demo-android/blob/master/REPORT_BUGS.md
答案 1 :(得分:1)
因此解决方案是使用正确的区域设置,因为一个区域中的令牌与另一个区域中的令牌不兼容。
正在改进服务端的错误消息,以更好地反映这种情况。