跳转至
3.请求鉴权
合作方账号
- 此处给出的账号,key为事例,不可实际用于访问
- 合作方账号: partnerId=161105235
- 合作方加密:md5Key=FKu2killP81CJustsoso
请求鉴权
- 为了确保只有通过授权的合作伙伴来访问接口,特作如下安全层面的约定。
以或作伙伴访问书籍详情接口为例:
URL :http://openapi.lrts.me/book/getDetail.action?k1=v1&k2=v2&k3=v3&token=XXX&partnerId=170308105
- 值说明
openapi.lrts.me为请求域名 /book/getDetail.action 为接口地址
k1、k2、k3 为具体业务请求的参数名称 v1、v2、v3 为具体业务对应参数的参数值
token 则为本次请求的鉴权标识 partnerId 是合作伙伴标识参数名称
在调用本文档描述的任何接口的时候,懒人听书服务端都会把通过GET或者POST请求提交的任何参数,
服务端都会进行校验识别,服务端不区分参数是POST来的还是GET来的。
token生成规则
- 合作伙伴在和懒人听书商务达成合作协议之后,懒人都会为合作伙伴分配一个合作伙伴ID
(比如partnerId=161105235)和一个加密的秘钥md5Key(比如:md5Key= FKu2killP81CJustsoso),
partnerId和加密秘钥是成对出现,配对才有效。
注意:partnerId是不参与md5加密的.
下面以如下URL为例来描述token生成规则:
http://open.lrts.me/book/getDetail.action?size=200&referId=0&opType=H&userId=455&q=903&imei=XXX&partnerId=161105235
- 1、对参数的key按照字母序排序(字符ASCII码升序排列),排序后的URL如下:
/book/getDetail.action?imei=XXX&opType=H&q=903&referId=0&size=200&userId=455<注意http://open.lrts.me 不参与加密>
- 2、用懒人事先分配好的md5Key来用进行md5运算(32位小写),运算的的字符串为:排序后的URL+md5Key
/book/getDetail.action?imei=XXX&opType=H&q=903&referId=0&size=200&userId=455FKu2killP81CJustsoso
加密后的结果为:8b221fb5b16c699b24c44b3ae7bb8c11
- 3、采用如下方式访问懒人听书服务端获取数据:
http://open.lrts.me/book/getDetail.action?partnerId=161105235&token=8b221fb5b16c699b24c44b3ae7bb8c11 & imei=XXX&opType=H&q=903&referId=0&size=200&userId=455
- 4、参数key排序补充说明
按照key的字符ASCII码升序排列参考如下实例:
排序前各字符串顺序:
"AAA"
"aaaaa"
"xMy"
"xmy"
"xM1"
"a1111"
"aAAAA"
"_aaaa"
"-aaaa"
"A11"
"opTYPE"
"flowTYPE"
"zhangzk"
"zhangjy"
"dinglp"
"zhangZK"
"dinglping"
排序后的顺序:
[-aaaa, A11, AAA, _aaaa, a1111, aAAAA, aaaaa, dinglp, dinglping, flowTYPE, opTYPE, xM1, xMy, xmy, zhangZK, zhangjy, zhangzk]