作为一个业余PHP选手,闲来没事捣腾一下TP6.0,试着帮朋友集成微信支付,前期阶段选择了JSAPI支付方式,怎样成为微信支付的商户,这就不再讲述,按照微信的要求来就行。讲讲自己遇到的一系列坑
1、无法成功添加支付授权目录。
按照微信支付官方文档,添加支付授权目录添加,我试了N次,以失败告终,正确姿势如下:
1)登录微信商户平台
2)点击<产品中心>,产品中心->支付产品->JSAPI支付->产品设置,切忌直接点击【开发配置】
然后按照要求添加支付授权目录,添加后不要进行刷新,可以再重复这个步骤,则可以看到已成功添加的目录。
2、 接入微信支付,出现证书错误(The `certs(%1$s)` contains the merchant‘s certificate serial number(%2$s) which is not allowed here)
接入微信支付时,需要传入的证书并非是在《Api安全》中的证书,而是需要自己手动下载
,如何手动下载,就需要自己写代码实现,代码就不展示了,按照要求实现即可官网地址,代码中的证书序列号、私钥都是用第一步证书工具生成的,只是证书需要使用重新下载的。
3、按照配置后,出现Fatal error: Uncaught UnexpectedValueException: Cannot load publicKey from(string), please take care about the \$thing input 错误
出现这个原因是key、cer的路径出错,路径要求满足以下任意一点即可
1)file:// + 绝对路径
2)使用 openssl_get_privatekey(file_get_contents(绝对路径));