四步轻松教你弄定微信支付本地调试

小微 科技四步轻松教你弄定微信支付本地调试已关闭评论297字数 955阅读模式
摘要微信支付本猿最近在做微信支付相关的案例,参考了一下微信官方的支付文档,在本地跑了一下官方给的Demo,下面以Native支付为例,发现Native支付模式二的二维码就是不显示。Na...

微信支付

本猿最近在做微信支付相关的案例,参考了一下微信官方的支付文档,在本地跑了一下官方给的Demo,下面以Native支付为例,发现Native支付模式二的二维码就是不显示。文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

Native支付模式二不显示二维码文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

细心浏览了微信支付的官方文档,其中文档中有一个“通知地址(notify_url)”的字段名,描写里清楚明确的写道:“异步接管微信支付结果通知的回调地址,通知url必需为外网可走访的url,不能携带参数。”https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_1,这才明白原来微信支付回调必需是公网能走访到的,于是乎做了个用natapp做了内网穿透,结果却发现二维码还是不显示,又出什么幺蛾子了???没方法,一步一步地调试呗,记得有位老师说过,写代码就是一步步调试的进程。文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

在官方给的Demo里有个native.php的文件,在图中所示之处加之一个var_dum,查看一下这个打印的结果发现是空的。说明是在进行统一下单的进程中出问题了。文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

定位到GetPayUrl办法,发现这官方给的代码里仅仅记录了办法,咱们可以把这个异样给打印出来,加一行代码:return $e;文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

使用Postman工具测试有报错:curl犯错,过错码:60,于是我就明白了,这是由于在提交数据的时候有异样。文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

这时候定位到统一下单的办法unifiedOrder,如图:文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

这里有一行$response = self::postXmlCurl;看到这里,想必大家可能就明白了,8成是postXmlCurl这兄弟有问题了。来到该办法下,咱们可以看到官方给的注释,这个办法的意思就是以post方式提交xml数据导对应的url接口。大概在567行左右吧,可以看到这两行代码:文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

curl_setopt;文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

curl_setopt;//严格校验文章源自微观生活(93wg.com)微观生活-https://93wg.com/4736.html

将这两行代码的第三个参数分别改成FALSE,以及1便可。

这两个参数的意思:

  1. CURLOPT_SSL_VERIFYPEER:禁用后cURL将终止从服务端进行验证。使用CURLOPT_CAINFO选项设置证书使用CURLOPT_CAPATH选项设置证书目录以上就是微观生活(93wg.com)关于“四步轻松教你弄定微信支付本地调试”的详细内容,希望对大家有所帮助!
继续阅读
 
小微
  • 版权声明: 本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们(管理员邮箱:81118366@qq.com),情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
  • 转载请务必保留本文链接:https://93wg.com/4736.html