开放平台应用的自动登录相关

veng 1月前 95

demo日报应用是先通过getConfigData接口获取应用config信息,但是观察后台接口,是用的mRobotService获取的config。 OutputApplicationConfigData outputApplicationConfigData = mRobotService.getApplicationSignature(); 这里获取到的appId是应用id,appType是0

然后getAuthCode方法,通过appId和appTYpe获取authCode。 问题1:这个authCode和当前app用户没有关系吧?

后续登录login接口里需要根据appId、appType、authCode获取当前用户account,代码逻辑里是构造AuthCodeToken进行登录,但是观察AuthCodeRealm验证时,doGetAuthenticationInfo方法里却是调用的channelServiceApi。 IMResult applicationUserInfoIMResult = channelServiceApi.applicationGetUserInfo(authCodeToken.authCode); channel的appType是1吧? 问题2:为什么mRobotService获取到的appType(=0)可以作为AuthCodeToken被channelServiceApi验证,并能获得account?

是否我的理解有问题,希望老师解答一下,谢谢!

最新回复 (3)
  • HeavyRain 1月前
    引用 2
    1,跟用户有关系
    2,我们代码有问题,应该type相同才行。现在没有问题的原因是创建应用时同时创建机器人和频道,2个具有相同的秘密,所以验证能通过
  • veng 1月前
    引用 3
    1.appId和appType是平台应用本身的配置吧,怎么和用户产生联系的?
    2.请问这个问题近期会修复么?有预计的时间点嘛?
    谢谢!
  • HeavyRain 1月前
    引用 4
    1,authCode应该是appscertc和用户id拼接并hash的结果
    2,这个问题你们可以自己修复,或者保持现状也行
返回