中国移动一键免密登录 103101签名错误

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sumsear/article/details/86001229

调用中国移动统一认证SDK返回103101 签名错误的原因是因为在统一认证的请求参数中的sign字段出现错误导致的,这个错误主要出现在开发者调用统一认证服务端api获取手机号时或者老版本的Android客户端sdk也有可能出现这个错误。

1.生成sign参数的字段与json中对应的参数不一致

如下是获取用户信息接口的参数格式

{
"appid" : "3000******76",
"msgid" : "335e06a28f064b999d6a25e403991e4c",
"sign" : "213EF8D0CC71548945A83166575DFA68",
"strictcheck" : "0",
"systemtime" : "20180129112955435",
"token" : "STsid0000001517196594066OHmZvPMBwn2MkFxwvWkV12JixwuZuyDU",
"version" : "2.0"
}

根据开发文档的描述,sign的生成规则是将 appid、version、msgid、systemtime 、strictcheck、token、appkey等字符串拼接,然后对拼接好的字符串进行MD5加密生成长度为32位的大写的字符串。一般在开发过程中由于开发者的疏忽有可能出现的情况是:

a.进行拼接的systemtime等参数与json中的systemtime的值不一致

b.appkey复制时多复制了空格

c.拼接的字符串顺序与文档要求的appid、version、msgid、systemtime 、strictcheck、token、appkey的顺序不一致

d.新注册的应用在配置能力时多了一个appSecret的选项,如图:

如果开发者选择了APPSecret,那么生成sign时使用的appkey就需要替换成这里的APPSecret。
 

猜你喜欢

转载自blog.csdn.net/sumsear/article/details/86001229
今日推荐