微信支付接口中为啥demo中提供的js调用不到支付界面

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信支付接口中为啥demo中提供的js调用不到支付界面相关的知识,希望对你有一定的参考价值。

demo中提供的js是无法访问到真实的支付界面的。因为demo中只是用来演示的,微信的支付接口是部署在内网的,外网是无法访问的。
(1)用户打开商户网页选购商品,发起支付,在网页通过javascript调用getBrandWCPayRequest接口,发起微信支付请求,用户进入支付流程。
(2)用户成功支付点击完成按钮后,商户的前端会收到JavaScript的返回值。商户可直接跳转到支付成功的静态页面进行展示。
(3)商户后台收到来自微信开放平台的支付成功回调通知,标志该笔订单支付成功。
参考技术A demo中提供的js是无法访问到真实的支付界面的。因为demo中只是用来演示的,微信的支付接口是部署在内网的,外网是无法访问的。
(1)用户打开商户网页选购商品,发起支付,在网页通过JavaScript调用getBrandWCPayRequest接口,发起微信支付请求,用户进入支付流程。
(2)用户成功支付点击完成按钮后,商户的前端会收到JavaScript的返回值。商户可直接跳转到支付成功的静态页面进行展示。
(3)商户后台收到来自微信开放平台的支付成功回调通知,标志该笔订单支付成功。
参考技术B demo中提供的js是无法访问到真实的支付界面的。因为demo中只是用来演示的,微信的支付接口是部署在内网的,外网是无法访问的。(1)用户打开商户网页选购商品,发起支付,在网页通过JavaScript调用getBrandWCPayRequest接口,发起微信支付请求 参考技术C 1、最基本的操作就是检查各项参数正确
2、确保将测试微信号加入测试白名单

3、目录正确:发起授权请求的页面必须是在授权目录下的页面,而不能是存在与子目录中。否则会返回错误,android返回“System:Access_denied”,ios返回"access_control:not_allowed"
4. 在微信支付给出的php DEMO里面是有BUG的,本来非静态方法在DEMO里是调用的静态方法,未实例化类
5. 在JS 请求微信支付的时候参数最好自己组装为JSON格式,不然会出现莫名其妙的参数错误
6. 微信支付给出的DEMO里面没有回调处理的模块,这块代码可以参考财付通的DEMO本回答被提问者和网友采纳
参考技术D 线上:网关支付接口,快捷支付接口,费率千3-6,无其他接入费用,提供B2B\B2C\游戏、商城等网站线上支付接口、移动支付接口,全国接单,招募渠道长久分润。

vue实现-微信网页中唤起支付宝支付

参考技术A 微信浏览器内是无法唤起支付宝的,会提示在浏览器打开,类似下面

所以在微信公众号的支付宝支付最终是通过手机浏览器唤起的支付宝支付,按照手机网站的支付方式即可。
官方也有demo,官方demo的用户提示相对来说更好一些,可以参照一下
微信公众平台无法使用支付宝收付款的解决方案

用vue的要注意ap.js中需要修改

此处不用路由跳转的原因是因为在ios手机中,路由跳转后的页面,复制出来的链接并不是本路由的实际url

我的实现:

微信网页和手机浏览器都可通过该方式
_AP.pay(gotoUrl);
调用的是

以上是关于微信支付接口中为啥demo中提供的js调用不到支付界面的主要内容,如果未能解决你的问题,请参考以下文章

微信h5支付demo微信H5支付demo非微信浏览器支付demo微信wap支付

微信支付jssdk是做啥用的

微信支付v3 统一下单接口 demo

微信支付 jsapi接口怎么调

微信H5网页公众号外支付接入攻略demo

微信小程序怎么向外部php文件传递参数