移动微信支付报错总结(jsapi)

pc的demo很多,不记。

移动端做支付的时候要先配置可测试域名和授权域名,一个在公众平台里的微信支付里配置

注意,获取open的Id的方法需要写到这个配置好的域名下。否则会说域名未授权。

还有一个是在微信支付里配置的授权域名,在最下面有个网页授权,里面配置你的测试域名,然后需要下载一个文件,建议放到域名根目录下就可以。

想把官方的SDK下载一份,appid什么的配置好。

然后就可以生成订单测试了,这才是坑的开始。

首先是获取openid,我猜他的机制是通过你发出请求,然后他请求微信支付的开放平台,然后给你返回openid,这时候你携带的参数就显得尤为重要,如果你链接用/来链接参数和值的话他可能把你的参数当成路径,报一个域名未注册的错误,当支付的时候依旧试图调起微信,然后不会成功,安卓系统不会报错,ios会在调起之后报错(不知道是不是我手机的原因)。

报错1 域名未注册,仔细检查他报错的域名和你的配置域名是否一样,判断是参数格式的原因还是你获取openid的方法不在你注册域名下的原因。(可以参考 example文件夹里面的WxPay.JsApiPay.php 找到他拼装你链接的那行代码.打印下看看[我忘了几行了])

报错2 缺少参数, timeStamp,还在WxPay.JsApiPay.php类里找到GetJsApiParameters,timeStamp应该是字符串类型,你看他现在是不是整型,是的话加引号就解决了.

报错3 redirect_url参数错误:请仔细检查微信支付->账户中心->审核配置->网页授权,保证你的测试网页已经设置.

报错 4 什么都不报....压根儿就没试图调起支付,应该是你做的统一下单没有成功,导致没有生成订单无法支付,然后WxPay.JsApiPay.php会报错不会返回结果.只有一种情况就是有参数没有传过去(价格,订单编号,名称,openid...),一个个的打印,总会解决.还有请查看是否生成必须的两个参数:jsApiParameters,editAddress;

报错 5 调起后没有弹出支付,报什么订单失效之类的,然后然后就是试图调起但是没报错没弹出输入密码框,这个错误很常见,也最不好找...就是获取到的jsApiParameters,editAddress这两个参数应该是对象json格式的,如果报上述错误,十有八九是因为你返回的是字符串,千万记得要转成json对象

 

备注:倘若想要让生成订单和支付在同一个页面完成的话,不要试图用ajax生成订单后获取openid,那样是不会给你返回任何东西的,要在当前页面的方法里就获取openid,然后传到本页面,然后ajax生成订单后把openid和订单信息传到后台,调用微信接口统一下单,返回两个必要参数(jsApiParameters,editAddress)后进行支付.

 

做一个心中有料的人.<shiyan_stz@163.com>

 

转载于:https://www.cnblogs.com/shitouzi/p/6134589.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信支付 PHP V3 JSAPI Demo是一个用于演示使用PHP语言开发的微信支付服务的案例。 在这个Demo中,我们将展示如何通过JSAPI(公众号支付)来实现用户在微信公众号内进行支付的功能。 首先,我们需要准备好开发环境。确保我们已经安装了PHP、服务器环境以及微信支付SDK。接着,我们可以创建一个基本的支付页面。 在这个页面中,我们需要引入微信支付提供的JSAPI SDK,以及自己的JS代码文件。然后,我们需要编写相应的PHP代码来处理用户提交的支付请求并生成支付订单。 在用户点击支付按钮后,我们可以通过微信JSAPI SDK提供的接口来获取用户的openid(用户在微信公众号内的唯一标识)。我们可以使用这个openid来标识用户的身份。 接下来,我们需要生成一个唯一的商户订单号,并将订单信息发送给微信支付服务器进行支付处理。在生成订单时,我们需要包括商品的价格、商品描述以及支付回调地址等信息。这些信息在生成订单时都需要进行签名,以确保安全性。 生成订单后,我们需要将订单信息以JSON格式返回给前端页面。前端页面可以通过调用微信JSAPI SDK提供的接口来发起支付请求。支付请求会打开微信支付页面供用户输入密码进行支付。 一旦用户完成支付微信支付服务器会向我们提供的回调地址发送一个支付结果通知。我们需要在回调函数中处理这个通知,并校验通知的合法性。如果通知合法,我们可以更新订单的支付状态,并进行相关的业务处理。 以上就是微信支付 PHP V3 JSAPI Demo的基本流程。通过这个案例,我们可以了解如何使用PHP语言来实现微信公众号支付功能,并与微信支付服务器进行交互。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值