没有合适的资源?快使用搜索试试~ 我知道了~
首页微信APP支付服务端和Android 端详解及其demo
资源详情
资源评论
资源推荐

微信 支付服务端和 端详解及其
最近在开发 微信支付和支付宝支付,端和后端都是我自己开发的,发现两家公
司的文档都不是很友好,特别是微信,接触过或者开发过的人都应该有所体会。因此我特
意把开发的过程梳理了,做下记录,方便以后可能还用得到,同时也方便后来的一些开发
者,希望如此吧。文章较长,耐心看吧,因为这篇文章涉及到了服务端和安卓端的开发。
如果你是服务端开发者,那就只需要看服务端部分,如果是 开发者,就只需要看
部分即可。
这篇整理的是 微信支付服务端和 端,文末有服务端和 的下载链
接。
一、 准备工作
微信支付开发需要用到应用 ()、商户号()和秘钥,为了获取这
几个重要的参数,需要我们做以下几个步骤获取。如果已经有了这几个参数则可以直
接跳过这一步。
创建应用(获取 )
要开发 微信支付,需要在微信开放平台(http://open.weixin.qq.com)上创建应用以获
得应用 。微信有几个平台,一定要搞清楚,否则开发过程会觉得很混乱。最好先把
这 几 个 平 台 的 作 用 和 几 个 重 要 的 名 词 搞 清 楚 , 官 方 的 链 接 :
注册登录开发平台后进入管理中心创建应用,根据提示填写相应资料后提交审核,审
核结果一般三天工作日左右可以查看。注意应用签名不要搞错,推荐使用官方工具生
成。
审核通过之后,在管理中心页面即可看到成功创建的应用,点击查看进入详情页面即
可看到 ,如图:

申请商户号
商户号通过微信支付成功申请开通后获得,通过后可以在申请的邮件中找到,也可以
在微信商户平台账户中心账户设置! 安全中找到,就不贴图了。
"设置秘钥
秘钥由我们自己设置#可以在微信商户平台按照提示要求进行设置。也可按一下路径设
置:微信商户平台$$%账户中心$$%账户设置$$%! 安全$$%密钥设置
&下载证书
我们服务端开发用的是官方封装的 '(),支付部分需要用到证书,如果所有逻辑都是
自己写的话也可以不用,但是与支付相关的其他接口就必须用到了#所以干脆都用证书
的方式进行开发。在微信商户平台$$%账户中心$$%账户设置$$%! 安
全这个页面有下载的按钮,也不贴图了。
二、 梳理流程
先看下官方文档中交互时序图及其说明,这些官方文档都有说明了,但我还是想补充
些说明。

商户系统和微信支付系统主要交互说明:
步骤 :用户在商户 中选择商品,提交订单,选择微信支付。
步骤 :商户后台收到用户支付单,调用微信支付统一下单接口。
步骤 ":统一下单接口返回正常的 ,再按签名规范重新生成签名后,将数据传输
给 。参与签名的字段名为
,,,,*,+。注意:+ 的值格式为
'+,-
步骤 &:商户 调起微信支付。
步骤 .:商户后台接收支付通知。

步骤 /:商户后台查询支付结果。
补充说明:
商户服务端主要负责步骤 、步骤 " 中的签名、步骤 . 和步骤 / 的结果处理。在不少的应
用中展示支付结果是不依赖于步骤 / 的, 端调起支付后在回调类中直接展示支付结果,
这样商户服务端也可以不需要步骤 /。虽然这样基本都是没什么问题的,但是最好是按照
官方的要求,展示支付结果要依赖于商户后台查询的支付结果。
端主要负责步骤 和步骤 &,如果支付结果依赖于商户后台的查询结果,则还需要步
骤 /。
"步骤 " 这一步骤,很多人在这里被坑了,一定不要用预支付接口返回来的签名,需要重
新生成,而且参与的字段有且只有上面提到的 / 个,而且都是小写,其中时间戳的单位为
秒—0 位数,时间戳可以重新获取。
三、 服务端的代码(为了简化,这里的支付结果不依赖于商户后台的查询结果)
服务端开发的有两种方式,其一是可以按照官方文档,所有逻辑都由自己来写,其二
是使用官方封装的 '() 开发。我选择的是第二种,这个方便一些。
开发环境
开发工具 :!112!(3
构建工具 :45
引入 '() 依赖
45构建
在 1 中添加
6%
6+7!%+786+7!%
6*9!%$6*9!%
65%00"65%
6%
如果使用 :构建,则在模块 871+ 文件中的 范围内添加:
1+7;+78;#;$;#5;00";
" 如果是 1或者 !(3 用 :构建的话,可以直接下载 <再导入,至于怎么导
入 <包,网上有很多教程,这里略过。当然 45 也是可以 < 包的,只是比较麻烦
些,在我的支付宝支付开发文章里有 5环境下导入 < 包的教程。
微信支付 '()2 包下载链接:1110/&"0
"设置配置文件,在调用官方封装的 '() 时需要
+78,-=>+?
<5@!7'?
<5A1?
剩余18页未读,继续阅读


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论2