微信支付是现在比较流行的支付方式,但是关于微信系统的微信支付功能与支付宝支付等传统支付接口又不太一样,因为这些接口参数随时会变,可怕的是变更了以后微信官方也不会告诉你,因此,只有出了问题,再去查,才能知道更改了。真是无语。
明明上线后,运行好好地,但是,突然支付突然失灵了,于是客户的电话就打爆了我的电话!
没办法,排查,在生成预支付订单时,报出了如下错误!
<xml>
<return_code><![CDATA[FAIL]]></return_code>
<return_msg><![CDATA[time_expire时间过短,刷卡至少1分钟,其他5分钟]]></return_msg>
</xml>
这个地方我记得以前是规定过期时间的,我记得有个地方是自动跳转的,
解决方法:
方法一: 在生成预支付订单号时,不填写time_expire字段 因为这个字段不是必须填写的。
//$input->SetTime_expire(date("YmdHis", time() + 600));
方法二:如果非要填写的话 就填写的时间间隔稍微少一些,比如:10分钟。
$input->SetTime_expire(date("YmdHis", time() + 600));//二维码过期时间。默认10min
因为我有两台服务器,一个正常一个不正常。后来又查了下,据说是因为:服务器时间不对。改成正常时间即可。这个我需要试一下。
网络真是好,基本什么问题都能查到。感谢无私分享的各位大侠们!