签名规则如下:
1、请求参数按key字典排序,得到数组params
param1=value1¶m2=value2¶m3=value3&
param1=value1¶m2=value2¶m3=value3&key=privateKey
sign = md5(str)
5、请求参数带上sign
伪代码:
privateKey = '__privateKey__' //密钥,联系微景通工作人员索取
//请求参数(不包含sign本身)
params = {
'param1': value1,
'param2': value2,
'param3': value3,
};
ksort(params); //字典排序请求参数
//按url格式拼接字符串,得到 param1=value1¶m2=value2¶m3=value3&
str = '';
foreach (params as key => param) {
str += key +'=' + urlencode(urldecode(param)) + '&';
}
//拼接key,得到 param1=value1¶m2=value2¶m3=value3&key=__privateKey__
str += 'key=' + privateKey;
sign = md5(str); //加密得到签名字符串
params['sign'] = sign; //给sign加入请求参数
apiUrl = 'http://someapiurl';
res = http_get(apiUrl, params); //发起api http请求