server_document.md
2.08 KB
1. 充值通知第三方服务端接口(需提供回调地址)
参数列表:
orderId: parter订单号
tradId: 平台订单号
appId: 游戏接入分配appid
userId: 平台用户id
product: 购买商品名字(50字符)
currency: 币种 (目前仅有CNY)
amount: 充值金额(分)
channel:支付渠道(对应详情见3)
sig: 签名(算法详见2)
第三方server端返回值:
如果第三方验证成功,则返回字符串"success"即可,否则会通知10次后停止.如重复通知,注意校验平台订单号,如重复忽略.
2.签名算法
注意:签名参数不能写成固定数量,一定要获取全部参数并且除sig参数外,然后按照字母升序排列。
/**
* 签名算法
* @param request
* @return
*/
public String sig(HttpServletRequest request, String key){
Enumeration names = request.getParameterNames();
SortedSet<String> allParams = Sets.newTreeSet();
while (names.hasMoreElements()) {
String name = (String) names.nextElement();
if (name.equals("sig")) {
continue;
}
try {
allParams.add(name + "=" + URLEncoder.encode(request.getParameter(name), "utf-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
String params = Joiner.on("&").join(allParams)+key;
String computedToken = DigestUtils.md5DigestAsHex(params.getBytes());
return computedToken;
}
注意:参数是按字母升序排列 akey=value&bkey=value.... + secretkey(对应渠道的应用ID)
3.channel详情(部分上线)
100100:丫丫玩
100200:小皮
100300:安智
100400:豌豆荚
100500:应用汇
100600:机锋
100700:泡椒
100800:木蚂蚁
100900:靠谱助手
101000:游戏群(熊猫玩)
101100:琵琶网