Commit 6ee82922bb7c27cc80e4e2ee47682266ed8fe5b1
Exists in
master
Merge branch 'master' of http://git.letsgame.mobi/document/inlandsdk
Showing 1 changed file Side-by-side Diff
server_document.md
... | ... | @@ -0,0 +1,78 @@ |
1 | +1. 充值通知第三方服务端接口(需提供回调地址) | |
2 | +----------------------------- | |
3 | + 参数列表: | |
4 | + orderId: parter订单号 | |
5 | + tradId: 平台订单号 | |
6 | + appId: 游戏接入分配appid | |
7 | + userId: 平台用户id | |
8 | + product: 购买商品名字(50字符) | |
9 | + currency: 币种 (目前仅有CNY) | |
10 | + amount: 充值金额(分) | |
11 | + channel: 支付方式(对应详情见4) | |
12 | + sig: 签名(算法详见3) | |
13 | + | |
14 | + 第三方server端返回值: | |
15 | + 如果第三方验证成功,则返回字符串"success"即可,否则会通知10次后停止. | |
16 | + | |
17 | + | |
18 | +2. 登录验证(可选) | |
19 | +----------------------------------- | |
20 | + URL: | |
21 | + 参数: | |
22 | + userId: gumpId | |
23 | + appKey: | |
24 | + sessionKey:验证key | |
25 | + | |
26 | + 返回值: | |
27 | + { | |
28 | + "code":100000(100000:成功,100012:用户不存在,-1:失败), | |
29 | + "msg":"xxxxxx", | |
30 | + "userId":1234 | |
31 | + } | |
32 | + | |
33 | +3.签名算法 | |
34 | +-------------------------------- | |
35 | + | |
36 | + 注意:签名参数不能写成固定数量,一定要获取全部参数并且除sig参数外,然后按照字母升序排列。 | |
37 | +```java | |
38 | + | |
39 | + /** | |
40 | + * 签名算法(JAVA示例) | |
41 | + * @param request | |
42 | + * @return | |
43 | + */ | |
44 | + public String sig(HttpServletRequest request, String key){ | |
45 | + | |
46 | + Enumeration names = request.getParameterNames(); | |
47 | + SortedSet<String> allParams = Sets.newTreeSet(); | |
48 | + | |
49 | + while (names.hasMoreElements()) { | |
50 | + String name = (String) names.nextElement(); | |
51 | + if (name.equals("sig")) { | |
52 | + continue; | |
53 | + } | |
54 | + | |
55 | + try { | |
56 | + allParams.add(name + "=" + URLEncoder.encode(request.getParameter(name), "utf-8")); | |
57 | + } catch (UnsupportedEncodingException e) { | |
58 | + e.printStackTrace(); | |
59 | + } | |
60 | + } | |
61 | + | |
62 | + String params = Joiner.on("&").join(allParams)+key; | |
63 | + String computedToken = DigestUtils.md5DigestAsHex(params.getBytes()); | |
64 | + return computedToken; | |
65 | + } | |
66 | +``` | |
67 | + | |
68 | + | |
69 | + | |
70 | + 注意:参数是按字母升序排列 akey=value&bkey=value.... + secretkey(签名key) | |
71 | + | |
72 | +4.channel详情 | |
73 | +-------------------------------- | |
74 | + | |
75 | + 100100:微信 | |
76 | + 100200:支付宝 | |
77 | + 100300:银联 | |
78 | + | |
0 | 79 | \ No newline at end of file |