1. 新媒体云服务平台接口中心对接加密方式

1.1. 调用接口中心API必须遵循规则

  • 提交方式:采用POST方法提交
  • 数据返回:统一采用Json格式
  • 数据格式:数据格式为array
  • 字符编码:统一采用UTF-8字符编码
  • 签名算法: MD5

1.2. 调用接口中心API必须字段

字段名 说明
appId 管理员分配给应用的appId
timeStamp 当前时间戳(10位)
nonceStr 随机生成的32位字符串
method 请求的接口名称(RPC方式调用可不填写)
sign 签名

1.3. 安全规范

1.3.1. 签名生成的通用步骤如下

  1. 设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。

特别注意以下重要规则

  1. 参数名ASCII码从小到大排序(字典序);
  2. 如果参数的值为空不参与签名;
  3. 参数名区分大小写
  4. 接口可能增加字段,验证签名时必须支持增加的扩展字段
  1. 在stringA最后拼接上key得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。

举例:

假设传送的参数如下:

appId: wxd220e335a2258f4f;
timeStamp: 10000100;
method: XXXXX;
nonceStr: 12sadfsdfskwehrwekjfhwefwejkhf;

  1. 对参数按照key=value的格式,并按照参数名ASCII字典序排序如下:

    $stringA=”appId=wxd930ea5d5a258f4f&method=userAuth&nonceStr=12sadfsdfskwehrwekjfhwefwejkhf&timeStamp=10000100”;
    
  2. 拼接API密钥,生成sign:

    $stringSignTemp=$stringA.”&key=192006250b4c09247ec02edce69f6a2d”
    $sign = strtoupper(md5($stringSignTemp));
    

最终得到最终发送的数据(数组):

appId: wxd220e335a2258f4f;
timeStamp: 10000100;
method: XXXXX;
nonceStr: 12sadfsdfskwehrwekjfhwefwejkhf;
sign:{$sign};

Copyright © 新媒体云服务平台 2019 all right reserved,powered by Gitbook该文件修订时间: 2019-02-28 11:32:25

results matching ""

    No results matching ""