Showing
1 changed file
with
261 additions
and
0 deletions
1 | +#### 2.1 登录流程 | ||
2 | + | ||
3 | +##### 2.1.1 登录接口(必接) | ||
4 | + | ||
5 | +1、请求地址:http://gameurl/ (游戏入口地址,游戏方提供) | ||
6 | +2、请求方式:get 由4177平台iframe跳转至游戏地址 | ||
7 | +3、请求参数: | ||
8 | + | ||
9 | +``` | ||
10 | +open_id:用户open_id, | ||
11 | +access_token:用户登录口令, | ||
12 | +channel:用户渠道, | ||
13 | +is_favorite:是否收藏(0:未收藏,1:已收藏),收藏功能用于实现包括但不限于:微端下载、发送桌面、关注公众号等。, | ||
14 | + | ||
15 | +``` | ||
16 | + | ||
17 | + | ||
18 | + | ||
19 | +##### 2.1.3 前端初始化(必接) | ||
20 | + | ||
21 | +游戏加载时加载4177js文件,并做初始化 <script src="http://passport.4177.com/game/h5sdk" type="text/javascript>"</script> | ||
22 | +1、请求参数: | ||
23 | + | ||
24 | +``` | ||
25 | + app_id:应用id, | ||
26 | + open_id:用户open_id,登录授权时传入, | ||
27 | + channel:平台渠道标识,登录授权时传入 | ||
28 | + | ||
29 | + | ||
30 | +``` | ||
31 | + | ||
32 | +2、请求参数: | ||
33 | + | ||
34 | +``` | ||
35 | + var initdata = { | ||
36 | + app_id:"XXX", | ||
37 | + open_id:"XXX", | ||
38 | + channel: "XXX" | ||
39 | + }; | ||
40 | + | ||
41 | + | ||
42 | +``` | ||
43 | + | ||
44 | +3、请求方式:在游戏加载时调用 初始化sdk:aiaiusdk.init(initdata); | ||
45 | + | ||
46 | +4、返回值 无 | ||
47 | + | ||
48 | + | ||
49 | + | ||
50 | +#### 2.2 充值流程 | ||
51 | + | ||
52 | +##### 2.2.1 充值唤起(必接) | ||
53 | + | ||
54 | +1、请求参数: | ||
55 | + | ||
56 | +``` | ||
57 | + open_id:用户open_id, | ||
58 | + access_token:用户登录口令, | ||
59 | + bill_no:游戏充值订单号(游戏方可唯一识别), | ||
60 | + goods_name:商品名称, | ||
61 | + ext:额外参数,充值后原样返回, | ||
62 | + total_fee:充值歪钻数,1元RMB = 10歪钻 .(大于1,且不包含小数), | ||
63 | + sign:请求校验参数(签名需要在后端生成后再返回前端,secret_key不直接暴露在前端)md5(access_token=XXX&bill_no=XXX&ext=XXX&goods_name=XXX&open_id=XXX&secret_key=xxx&total_fee=XXX) | ||
64 | + | ||
65 | + | ||
66 | +``` | ||
67 | + | ||
68 | +2、请求方式 | ||
69 | + | ||
70 | +``` | ||
71 | + 引用js文件:<script src="http://passport.4177.com/game/h5sdk" type="text/javascript"></script>, | ||
72 | + 初始化sdk:aiaiusdk.init(), | ||
73 | + 拼装参数 | ||
74 | + var paydata = { | ||
75 | + "open_id":'111111111111111', | ||
76 | + "access_token":'22222222', | ||
77 | + "bill_no":'33333333333', | ||
78 | + "goods_name":'游戏大礼包', | ||
79 | + "total_fee":1, | ||
80 | + "ext":'abc', | ||
81 | + "sign":'aaaaaaaabc', | ||
82 | + }, | ||
83 | + 调用支付方法:aiaiusdk.pay( paydata, function (code, msg) { alert("支付 code="+code+",msg="+msg); | ||
84 | + | ||
85 | + | ||
86 | +``` | ||
87 | + | ||
88 | +示例代码 | ||
89 | + | ||
90 | +``` | ||
91 | + <!DOCTYPE html> | ||
92 | + <html lang="zh-cn"> | ||
93 | + <head> | ||
94 | + <script src="http://passport.4177.com/game/h5sdk" type="text/javascript"></script> | ||
95 | + <script> | ||
96 | + aiaiusdk.init(); | ||
97 | + var paydata = { | ||
98 | + "open_id":'111111111111111', | ||
99 | + "access_token":'22222222', | ||
100 | + "bill_no":'33333333333', | ||
101 | + "goods_name":'游戏大礼包', | ||
102 | + "total_fee":1, | ||
103 | + "ext":'abc', | ||
104 | + "sign":'aaaaaaaabc', | ||
105 | + }; | ||
106 | + aiaiusdk.pay( paydata, function (code, msg) { | ||
107 | + alert("支付 code="+code+",msg="+msg); | ||
108 | + }); | ||
109 | + </script> | ||
110 | + </head> | ||
111 | + <body> | ||
112 | + </body> | ||
113 | + </html> | ||
114 | + | ||
115 | + | ||
116 | +``` | ||
117 | + | ||
118 | +3、返回值 | ||
119 | + | ||
120 | +| code | msg | | ||
121 | +| ---- | ------------------------------- | | ||
122 | +| 5 | 关闭支付 | | ||
123 | +| 6 | 支付成功(目前支付成功直接重新加载游戏页面,后续版本将会改进) | | ||
124 | +| 7 | 支付失败 | | ||
125 | +| 8 | 取消支付 | | ||
126 | +| 9 | 支付参数错误 | | ||
127 | +| 10 | 支付参数数量错误 | | ||
128 | + | ||
129 | + | ||
130 | + | ||
131 | +## 2.3 统计接口 | ||
132 | + | ||
133 | +##### 2.1.5 角色创建接口(必接) | ||
134 | + | ||
135 | +1、请求参数: | ||
136 | + | ||
137 | +``` | ||
138 | + open_id:用户open_id, | ||
139 | + server_id:服务器id, | ||
140 | + server_name:服务器名称 | ||
141 | + role_id:角色id | ||
142 | + role_name:角色昵称 | ||
143 | + | ||
144 | + | ||
145 | +``` | ||
146 | + | ||
147 | +2、请求方式: | ||
148 | + | ||
149 | +``` | ||
150 | + var roleData = { | ||
151 | + open_id:"123456789abc", | ||
152 | + server_id:"123456789abc", | ||
153 | + server_name: "123456789abc" | ||
154 | + role_id: "123456789abc" | ||
155 | + role_name: "123456789abc" | ||
156 | + }; | ||
157 | + | ||
158 | + | ||
159 | +``` | ||
160 | + | ||
161 | +调用查询接口方法: aiaiusdk. createRole (roleData) | ||
162 | + | ||
163 | + | ||
164 | + | ||
165 | +##### 2.1.6 进入游戏接口(必接) | ||
166 | + | ||
167 | +1、请求参数: | ||
168 | + | ||
169 | +``` | ||
170 | + open_id:用户open_id, | ||
171 | + server_id:服务器id, | ||
172 | + server_name:服务器名称 | ||
173 | + role_id:角色id | ||
174 | + role_name:角色昵称 | ||
175 | + | ||
176 | + | ||
177 | +``` | ||
178 | + | ||
179 | +2、请求方式: | ||
180 | + | ||
181 | +``` | ||
182 | + var roleData = { | ||
183 | + open_id:"123456789abc", | ||
184 | + server_id:"123456789abc", | ||
185 | + server_name: "123456789abc" | ||
186 | + role_id: "123456789abc" | ||
187 | + role_name: "123456789abc" | ||
188 | + }; | ||
189 | + | ||
190 | + | ||
191 | +``` | ||
192 | + | ||
193 | +调用查询接口方法: aiaiusdk. enterGame (roleData) | ||
194 | + | ||
195 | + | ||
196 | + | ||
197 | +##### 2.1.6 open事件接口(必接) | ||
198 | + | ||
199 | +1、请求参数: | ||
200 | + | ||
201 | +``` | ||
202 | + open_id:用户open_id, | ||
203 | + server_id:服务器id, | ||
204 | + server_name:服务器名称 | ||
205 | + role_id:角色id | ||
206 | + role_name:角色昵称 | ||
207 | + | ||
208 | + | ||
209 | +``` | ||
210 | + | ||
211 | +2、请求方式: | ||
212 | + | ||
213 | +``` | ||
214 | + var roleData = { | ||
215 | + open_id:"123456789abc", | ||
216 | + server_id:"123456789abc", | ||
217 | + server_name: "123456789abc" | ||
218 | + role_id: "123456789abc" | ||
219 | + role_name: "123456789abc" | ||
220 | + }; | ||
221 | + | ||
222 | + | ||
223 | +``` | ||
224 | + | ||
225 | +调用查询接口方法: aiaiusdk. enterGame (roleData) | ||
226 | + | ||
227 | + | ||
228 | + | ||
229 | + | ||
230 | + | ||
231 | +``` | ||
232 | +function GetQueryString(name){ | ||
233 | + var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); | ||
234 | + var r = window.location.search.substr(1).match(reg); | ||
235 | + if(r!=null)return unescape(r[2]); return null; | ||
236 | +} | ||
237 | + | ||
238 | +function getCookie(name) { | ||
239 | + var r = document.cookie.match("\\b" + name + "=([^;]*)\\b"); | ||
240 | + return r ? r[1] : undefined; | ||
241 | +} | ||
242 | + | ||
243 | +function delCookie(name){ | ||
244 | + var exp = new Date(); | ||
245 | + exp.setTime(exp.getTime() - 1); | ||
246 | + var cval=getCookie(name); | ||
247 | + if(cval!=null) | ||
248 | + document.cookie= name + "="+cval+"; path=/;expires="+exp.toGMTString(); | ||
249 | +} | ||
250 | +function setCookie(name, value, Days){ | ||
251 | + if(Days == null || Days == ''){ | ||
252 | + Days = 300; | ||
253 | + } | ||
254 | + var exp = new Date(); | ||
255 | + exp.setTime(exp.getTime() + Days*24*60*60*1000); | ||
256 | + document.cookie = name + "="+ escape (value) + "; path=/;expires=" + exp.toGMTString(); | ||
257 | +} | ||
258 | +``` | ||
259 | + | ||
260 | + | ||
261 | + | ... | ... |
-
Please register or login to post a comment