1.充值通知兑换 请求
当充值成功 由SDK 服务器 发送 GET 请求
参数名 |
数据类型 |
说明 |
备注 |
cporderid |
String |
游戏传过来的orderid |
|
orderid |
String |
SDK平台的订单ID |
|
appid |
String |
SDK平台的游戏ID |
|
uid |
int |
用户ID |
|
time |
int |
时间戳 |
|
extinfo |
String |
游戏传过来的callbackInfo字段的值 |
|
amount |
float |
用户充值金额(人民币元) 注意:做支付金额验证后,游戏再发货。 |
|
serverid |
String |
服务器ID |
|
charid |
String |
角色ID |
|
sign |
String |
加密字符串 |
|
$arr['cporderid']=”CP订单号”;
$arr['orderid']=”SDK 这边的订单ID”
$arr['appid']=”appid”;
$arr['uid']=用户ID;
$arr['time']=time();
$arr['extinfo']=“扩展信息 游戏发起支付请求时传递过来的callbackInfo”;
$arr['amount']=”充值金额”;
$arr['serverid']=”服务器ID”;
$arr['charid']=”角色ID”;
ksort($arr); //对关联数组按照键名进行升序排序
$signstr=http_build_query($arr);
http_build_query()就是将一个数组转换成url 问号?后面的参数字符串,并且会自动进行urlencode处理。
请求参数可能携带paycanal,切记不要参与加密
$key=”充值KEY”;
$arr['sign']=md5($signstr.$key); ( . 是连接符 , 不参与加密)
参考:
$sign =md5(amount=6.00&appid=5N4228223676ZZ86&charid=2147483647&cporderid=11903201049270000001&extinfo=%E5%85%85%E5%80%BC6%E5%85%83&orderid=20190320105121956109&serverid=46&time=1553052026&uid=1_599_1KApwfrMMtP4QdNNtpBxHK4FwFcncNbwH)
其中结尾蓝色部分(KApwfrMMtP4QdNNtpBxHK4FwFcncNbwH)是pay_key ,没有拼接符号
加密后
$sign =4854d3c5c27e8317b4e391b6b2bd66d2;
请求示例:
?amount=6.00&appid=5N4228223676ZZ86&charid=2147483647&cporderid=11903201118320000001&extinfo=%E5%85%85%E5%80%BC6%E5%85%83&orderid=20190320105121956109&serverid=46&time=1553052026&uid=1_599_1&sign=4854d3c5c27e8317b4e391b6b2bd66d2
给平台服务器返回值
结果 |
说明 |
success |
接收成功 |
error |
失败 |
返回 success
表示接收成功
返回 其他信息则表示接收失败 SDK服务器 将会加入通知失败队列里面继续发送请求