1.基于原有代码的curl方式,已经快要调试成功,结果不管怎么搞,各种查资料,总是报错,Accept或者User-Agent缺失,导致接口调用失败,百思不得其解,签名算法也是正常,结果最终问题出在CURLOPT_HTTPHEADER这个方法上,之前代码使用的是CURLOPT_HEADER,导致不能正常传值
,修改之后终于创建支付分订单成功
2.在生成签名的过程中,证书秘钥会作为加密参数,这个时候要使用读取文件的方式,获得证书内容,而不可直接写路径
3.看了微信的demo 之后,又开始想尝试另一种写法,用 GuzzleHttp替换掉curl,好嘛,坑又来了
首先是不管怎么引入,怎么new,都不能正常的创建一个Client的对象
查找了发现,是还要引入一个vendor/autoload.php文件,好了左右查相对路径引入成功了,重启jsonrpc服务器,发现vendor里面的composer报错,platform_check 文件说当前PHP版本过低,然后斗胆把这个文件改掉了,好了,终于不报错了
新的问题出现了,配置了header之后,说签名不匹配,其实之前的签名已经证实是正确可用的,百思不得其解,最终发现问题在于。。。
请求体 的json 的值后面,放的是原始数组,而我放的是json 串,这个改完之后,终于可以了
总结:多看demo,多研究吧,菜鸡就是要修炼啊