主页 > imtoken下载手机版 > PHP微信开发支付接口程序详解

PHP微信开发支付接口程序详解

imtoken下载手机版 2023-12-16 05:13:28

现在比特币支付接口php,微信支付接口和支付宝一样慢,可以通过API接口实现第三方网站或应用进行支付。 下面是一个php微信支付接口开发程序,已经通过测试。 感兴趣的朋友可以参考一下。

php微信支付接口开发程序说明:

必要条件:

appid //开发者中心在公众号后台获取(与邮件中的一致)

mchid//在邮件中获取

key//商户后台设置

appsecret //从公众号开发者中心获取

两个证书文件比特币支付接口php,在邮件中获取apiclient_cert.pem apiclient_key.pem

防范措施:

公众号后台微信支付-》开发配置-》新增测试目录和测试个人微信账号。

开发者中心-》网页授权获取用户基本信息-》改成你的测试域名。否则会出现redirect_uri参数错误

——————————后续有待完善——————

微信支付就绪页面后台自己进行了三个操作:

1.获取openid

获取openid.png

一开始我也是在第一步遇到问题。 获取不到openid,跟某些服务器有关。 该演示使用 curl 来获取它。

奇怪我的服务器curl一直获取不到。 后来改成file_get_contents就可以正常获取了。

但这不是解决方案。 因为后面会需要更多的curl操作。

看到开发文档里面有地方写证书操作需要libcurl 7.20.1以上版本,然后就一直在整台服务器上完善linux的php curl版本。 最后,我只是切换到另一个windows服务器。

暂时先这样吧,下次需要的时候再debug。

第二步:获取并支付订单号id

代码如下

获取与支付订单号id.png

这一步也遇到了很多问题。

首先,微信支付测试难度较大,只能在微信中测试。 我只是用手机来回滑动。

其次,使用 var_dump 进行调试并不好用。 打印一些xml格式的文件,只显示字符长度,不显示内容。 于是用日志的形式写在服务器上进行调试,日志代码:

代码如下

log代码.png

使用 $this->log_d(xxx); 在demo中调用WxPayPubHelper.php。

一开始一直报错是因为我的mchid和appid不匹配。 . 他们给了我错误的帐号。 起初,我不知道如何进行实验。 这一步的调试是var_dump($this->result); 在 getPrepayId(); 你可以看到错误代码。

第三步:生成支付前端js代码,放到网页上:

代码如下

生成支付前端 js代码就绪到网页上.png

————————点击进入支付——————————

这部分又遇到问题了:

android 返回“System: Access_denied”,ios 返回“access_control: not_allowed”

我在百度上查了很多。 其实我早就看到这东西了,一直没注意!

发起授权请求的页面必须是授权目录下的页面,不能是子目录下的页面,否则会返回错误

我把支付文件放在/domain name/pay/demo/

一开始总是跑到/domain name/pay/结尾,以为就可以了。 支持子目录,结果不行! .

——————————看下图——————

wxpay1

wxpay3

wxpay2

————————进程中的xmljs————————

为生成和支付提交的订单id:

代码如下

待提交生成与支付订单id.png

提交后,返回正确,其中包含perpay_id:

 提交后返回正确,其中包含了perpay_id.png

生成支付js:

生成支付用的js.png

支付成功后返回的通知xml:

支付成功后返回的通知xml.png

数据是任意的,请参考上面的格式。 还要注意区分大小写。以上就是本文的全部内容,希望对大家的学习有所帮助