手机网游开发指南-付费接口
Agent`K将在本文中介绍手机网游开发中的用户付费接口。(本文来自博客园的Agent`K,转载请注明)
用户(玩家)要在游戏里花钱,这个钱怎么到开发商的账上,这就是用户付费接口要做的事情。
以使用手机充值卡付费为例,流程如下(这些过程是在服务器程序中完成的):
- 得到用户从游戏内提交来的卡号、密码等信息。
- 向手机充值卡支付提供商(比如易宝支付)发起充值请求。这种请求有指定API,一般为发起http请求,post方式发送指定格式的数据。出于安全考虑,这些数据需要进行加密、签名,支付商会提供一些编号、密钥之类的信息,并要求在加密、签名过程中使用。请求返回结果称为“充值申请”结果,并不是最终的充值结果。
- 等待充值提供商的通知。通知方式为,回调我方指定的http地址(可能会被要求必须是80端口)。这个地址可以在提供商的后台指定,也可以在发起充值请求的参数中指定。
- 收到通知后进行解密、签名验证,进行后续操作,最后按指定格式响应接收通知成功或失败。注意,我方可能收到多次内容相同的通知,需要做相应的去重处理。有些提供商的API会支持订单查询接口。
各种非银行卡的付费卡,都可以按以上流程接入,只是支付提供商不同(分成模式的推广渠道会要求我方接入他们的充值接口,流程类似)。
接下来看下手机支付平台的付费流程。
以支付宝为例:
手机客户端在发起充值时,会调用支付宝的手机支付服务(需要手机安装支付宝客户端),该服务收集用户的输入(可以在程序层面指定一些我方的信息,比如用户账号等),并打开支付宝的付费界面,进行一系列付费流程,完成后重新回到游戏界面。支付结果会以http请求方式通知我方的服务器。
有些推广渠道会要求客户端接入他们的客户端sdk,其中包含的充值功能的工作流程和上面的类似。
实现方案请参考 《手机网游开发指南-付费接口-收到付费通知后的数据传递》。
嗯嗯,就这么多,不难吧?等看到各种各样的充值API后你就懂了。
(本文来自博客园的Agent`K,转载请注明)