接口授权
授权说明
为保证第三方平台与海带开放平台间接口安全,防止外部接口滥用,需设定APP_KEY,APP_SECRET,开发时需先获取测试服务器地址及相应的APP_KEY和APP_SECRECT。
通过APP_KEY和APP_SECRET进行用户登录,登录后获取与APP_KEY关联用户的member_id,account_id和token后再进行后续接口调用,并叠加member_id,accountId和token参数(接口定义不再复述)。
接口返回result参数定义
开放平台通用接口返回参数中 的result定义如下:
0 功能调用失败
1 功能调用成功
接口返回code参数定义
开放平台通用接口返回参数中的code定义如下
101 密钥不正确(可能原因:APP_SECRECT不正确)
102 appkey不正确(解决办法:检查是否拼写错误,参数传递顺序是否正确)
103 请求超时(可能原因:时间戳不对;解决办法:重新请求)
104 时间戳错误(可能原因:参数timestamp错误;一定要是北京时间;时间戳毫秒13 位)
105 签名验证失败(可能原因:url中存在中文或参数值有标点符号的需要url encode utf-8转码;建议先检查一下所有参数是否已经放进去,如果是java环境最好直接用我们的sdk)
106 授权认证失败(可能原因:查看memberId参数,token参数是否正常)
接口请求地
- 测试环境:http://api.pre.seatent.com
- JSON地址:http://img.pre.seatent.com
- 例:登录接口:http://api.pre.seatent.com/ssoapi/v2/login/login
签名规则
把 URL 请求的所有参数,除了 topSign 本身以外。把所有的参数按照字母大小排列(从小到大,同样字母则以第二个字母开始排序)。
- 示例:
接口登录:
/ssoapi/v2/login/login?appkey=12345&password=4459a7c499614801b0ee357a95e8790c×tamp=1481712122528&username=123&topSign=6AB89AC5C6139E496B2D41F1FA398A8245A658EF
签名过程:
- 第一步:字符串排序
appkey=12345&password=4459a7c499614801b0ee357a95e8790c×tam p=1481712122528&username=123 - 第二步:第一步字符串前后增加 APP_SECRET,假设 APP_SECRET 是 abcdef
abcdefappkey=12345&password=4459a7c499614801b0ee357a95e8790c&tim estamp=1481712122528&username=123abcdef
(注意:有中文或标点符号请先encode utf-8转码) - 第三步:对第二步字符串做 SHA1 加密(大写,请以实际签名结果为准)
6AB89AC5C6139E496B2D41F1FA398A8245A658EF
请求的时候,带上 topSign=6AB89AC5C6139E496B2D41F1FA398A8245A658EF 即可
注意:timestamp 的长度为 13 位且务必为准确时间