支付宝开发平台支付API文档: https://docs.open.alipay.com/291/106130
对接支付API出现问题的主要原因:数据被转义,所以在调试时先把数据可以写死
注意:在调试是获取测试数据不能直接打印,可以写在日志中,从文本中获取,这样不会被转义,直接打印会转义导致签名时出错;
这里验签必须使用支付宝公钥(支付宝给的公钥)
私钥是商户私钥
支付宝签名和验签:
首先支付宝公钥跟商户私钥写死,调试,不要从文件中获取,可能会出现问题
严格按照文档来 SDK
1.签名
在测试过程中用到的数据可能被转义,时间要不能与现在的时间相隔太远
2.验签
$_POST获取数据
数据转换可能出现问题
需要取消掉输出数据 的过滤
fund_bill_list字段需要stripslashes(这里是一个坑,不过滤可能导致验签失败)
g
e
t
D
a
t
a
[
′
f
u
n
d
b
i
l
l
l
i
s
t
′
]
=
s
t
r
i
p
s
l
a
s
h
e
s
(
getData['fund_bill_list'] = stripslashes(
getData[′fundbilllist′]=stripslashes(getData[‘fund_bill_list’]);