×

您的手机?

你好,欢迎进入微快信科技有限公司官方网站!

您当前的位置:首页 > 栏目不存在

自己编写微信支付接口,使用模式二,总是无法出现二维码!

更新时间:2018-08-03 18:37:02点击次数:18956次字号:T|T
从官方下载的demo所编写的微信支付,模式二总是无法加载出二维码,不知道各位访客有没有遇到同类型的问题,反正,微快信的技术的员就遇到了,后来试验了好多次,最好才解决的,在这里共享出咱们所用的方式方法

从官方下载的demo所编写的微信支付,模式二总是无法加载出二维码,不知道各位访客有没有遇到同类型的问题,反正,微快信的技术的员就遇到了,后来试验了好多次,最好才解决的,在这里共享出咱们所用的方式方法!

首先,咱们说明一下,在这里微快信使用的是PHP的语言,或使用非PHP的朋友们可以离开了!

那么先说下,微信支付接口demo下载地址:

https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=11_1 

微快信下载的是PHP的demo

解压后:

你会发现这里跟网上教咱们的有些许不一样,是不是少了一个证书文件夹?"cert",虽然最后咱们编写成功了发现作用并不大,但还是有比较好,以下是咱们最后成实现支付的目录:

index.php在这里是没有用的,只是用来防止访客不小心进来这个目录位置而已,

然后,重点来了,我们先说明下lib文件夹里的文件

WxPay.Api.php
WxPay.Config.Interface.php
WxPay.Data.php
WxPay.Exception.php
WxPay.Notify.php
从微信支付平台下下载的demo在lib文件夹里就只有以上文件,会发现跟网上说的不一样,没有WxPay.Config.php这个文件,实际上也无所谓啦,他将在example里被WxPay.Config.php所继承,不过这样咱们整个编写过程中陷入混乱,所以最好,微快信技术人员把WxPay.Config.Interface.php这文件改了,名字也直接改成WxPay.Config.php,改的方式其实很简单,就是把原来没有的变成有的就行了,大致上如以下截图:

把微信支付的各个参数预先定义好,原来的文件是没做这些定义的WxPay.Config.php文件代码如下:

最终整个改好的

<?php
/**
* 	配置账号信息
*/

class WxPayConfig
{
	
	 //微信支付
	const APPID = 'wxxxxxxxxxxxxxxx431';	//公众号APPID
	const MCHID = '128***8301';	//商户号
	const KEY = 'vooj2vjv********cyz5nuytb2';
	const APPSECRET = 'fe9*********df7e3c8fe6c89f248b';
	
	//=======【证书路径设置】=====================================
	/**
	 * TODO:设置商户证书路径
	 * 证书路径,注意应该填写绝对路径(仅退款、撤销订单时需要,可登录商户平台下载,
	 * API证书下载地址:https://pay.weixin.qq.com/index.php/account/api_cert,下载之前需要安装商户操作证书)
	 * @var path
	 */
	const SSLCERT_PATH = '../cert/apiclient_cert.pem';
	const SSLKEY_PATH = '../cert/apiclient_key.pem';
	
	//=======【curl代理设置】===================================
	/**
	 * TODO:这里设置代理机器,只有需要代理的时候才设置,不需要代理,请设置为0.0.0.0和0
	 * 本例程通过curl使用HTTP POST方法,此处可修改代理服务器,
	 * 默认CURL_PROXY_HOST=0.0.0.0和CURL_PROXY_PORT=0,此时不开启代理(如有需要才设置)
	 * @var unknown_type
	 */
	const CURL_PROXY_HOST = "0.0.0.0";//"10.152.18.220";
	const CURL_PROXY_PORT = 0;//8080;
	
	//=======【上报信息配置】===================================
	/**
	 * TODO:接口调用上报等级,默认紧错误上报(注意:上报超时间为【1s】,上报无论成败【永不抛出异常】,
	 * 不会影响接口调用流程),开启上报之后,方便微信监控请求调用的质量,建议至少
	 * 开启错误上报。
	 * 上报等级,0.关闭上报; 1.仅错误出错上报; 2.全量上报
	 * @var int
	 */
	const REPORT_LEVENL = 1;
}
然后就改example/native.php 文件,改动的地方如下:

大致上就这么多了,如果有不懂的地方也可以通过在线客服与咱们交流哦!咱们会无条件,把这个改好的发你哦,只为日后认识更多有能力的技术人员,谢谢!

(编辑:admin)