通讯和请求验证
通讯方式
通讯协议:http
通讯格式:json
通讯地址:http://api.yibeidiao.com
企业api基础链接:/open/company
通讯方式为网络传输,所有请求都必须经过验证(sign参数),推荐企业对所有正常响应进行验签。
验证方式
所有请求需要在 request header 中加入验证信息
参数名 | 类型 | 说明 |
---|---|---|
key | string | 企业key,用来表明企业身份,参考[准备工作](https://www.showdoc.cc/ybd?page_id=1864080192995858 "准备工作") |
ts | string | 时间戳,当前系统时间,格式为“yyyyMMddHHmmss” |
seq | string | 业务流水号,企业系统中的业务流水标识,幂等判断依据 |
sign | string | 摘要签名 |
摘要签名计算规则
> 通讯采用MD5摘要签名方式进行验证,签名(sign)规则为:签名=MD5(key+ts+seq+token)
token只用来签名和验签,请勿通过网络明文传输
摘要签名计算例子
变量名 | 变量值 |
---|---|
key | CF6BF781AB82FEF5BFDF96B054ECEB15 |
token | 8FD2867925098ECFA5DC1DB15B5A3E79 |
ts | 20190102145555 |
seq | N123456 |
> key、ts、seq必须与header中一致
签名(sign)
=MD5(key+时间戳+业务流水号+token)
=MD5(CF6BF781AB82FEF5BFDF96B054ECEB1520190102145555N1234568FD2867925098ECFA5DC1DB15B5A3E79**)
=65F3CB60DDEA32F61A0AA3D06D5AC348
时间戳有效期验证
> 时间戳字段(ts)将被验证有效期,验证规则为时间戳左右2分钟窗口。 例子:时间戳(ts)为 20190301093000 ,则当请求到达服务器时间在 20190301092800 ~ 20190301093200 则有效
幂等验证
> 业务流水号(seq)将被验证唯一性
参考
[验证企业配置](https://www.showdoc.cc/ybd?page_id=1873114820296975 "验证企业配置")