微信开发之微信支付接口开发之微信支付之JSSDK(公众号支付)步骤
白羽 2018-12-12 来源 :网络 阅读 1515 评论 0

摘要:本文将带你了解微信开发微信支付接口开发之---微信支付之JSSDK(公众号支付)步骤,希望本文对大家学微信有所帮助。

    本文将带你了解微信开发微信支付接口开发之---微信支付之JSSDK(公众号支付)步骤,希望本文对大家学微信有所帮助。



1、准备

    1.1、公众号为服务号,开通微信支付功能

    1.2、为了方便调试微信后台的回调URL(必须为外网),我用了nat123软件来做一个映射

    1.3、官方的示例WxPayApi(.net版本)

 

2、业务流程图

 

 

3、步骤

3.1、用户访问商户的链接,商户链接地址调用【网页授权获取用户信息】接口获取用户的openid和access_token

参考:网页授权获取用户基本信息

3.1.1、第一步,用户同意授权,获取code,调用接口如下


https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE


如:redirect_uri填://edoec.com/EdoecPayWeb/Views/WxPay/ProductPage.aspx,redirect_uri网址的域名(这里是edoec.com)要先在公众号的“网页授权获取用名基本信息”的“授权回调域名地址”里设置好,如下图:

这个接口要调用成功的条件是要在公众号的“网页授权获取用户基本信息”填写“授权回调页面域名”否则微信公众号支付jsapi,打开网页后,出错如下错误:redirect_uri错误

 


 


授权回调页面的域名是上面:redirect_uri的域名,即:edoec.com


 


 


 

3.1.2、第二步,通过回调地址redirect_uri收到code值,通过code换取网页授权access_token和openid


请求格式如:



https://api.weixin.qq.com/sns/oauth2/access_token?appid=wxa842e8005c427e2d&code=031c5d5d316d2e7f032ad850ec1e6e3b&grant_type=authorization_code&secret=0ac7f0faf5f3bfbdd4f0a55d18836ad0






 


 




 

在WxPayApi示例里第二步出错:

请求格式:

https://api.weixin.qq.com/sns/oauth2/access_token?appid=wxa842e8005c427e2d&code=031c5d5d316d2e7f032ad850ec1e6e3b&grant_type=authorization_code&secret=0ac7f0faf5f3bfbdd4f0a55d18836ad0

出错如下:


 

原因:在HttpService.cs的get方法里用了代理,我代理里的ip写成了空,不要用代理


 


3.2、用3.1中获取到openid调用统一下单api,代码如下


通过调用url:https://api.mch.weixin.qq.com/pay/unifiedorder,来在微信支付系统下单,生成账单,这里会返回生成账单的账单号prepay_id

 

3.3、最终在HTML5界面调用支付JSAPI(对应业务流程图的“JSAPI接口请求支付”流程):

需要:

    1、在3.2步骤里微信支付系统通过统一下单已经产生的单号:prepay_id,和paySign

    2、发起支付的HTML5界面必须在微信公众号——>微信支付——〉开发配置——〉支付授权目录里,如下图


 

 


 

 

格式如下:

"{\"appId\":\"wxa842e8005c427e2d\",\"nonceStr\":\"1f2f9eda959b468e8c98c100e5e3b755\",\"package\":\"prepay_id=wx201602291402363c9dbefb210900648129\",\"paySign\":\"94AB6A4E818266C0338A4A28E08D016C\",\"signType\":\"MD5\",\"timeStamp\":\"1456725741\"}"

 

          

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之微信频道!



本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程