支付宝支付线上会报:Alipay Sign Verify FAILED
1. 运行环境
1). 当前使用的 Laravel 版本?
laravel 8
2). 当前使用的 php/php-fpm 版本?
PHP 版本:php 7.4
php-fpm 版本:
4). 业务环境
支付宝网页支付
5). 相关软件版本
yansongda/laravel-pay”: “2.3.0”
2. 问题描述?
本地沙盒环境测试没有问题。
线上支付部分会报错。
报错点:
$alipay = Pay::alipay($this->config);
try {
// 错误发生在这里
$data = $alipay->verify();
if (config('ypt.ali_pay_environment') != 'online') {
$order = $this->updateFinishOrderHandle($data);
} else {
$order_num = $data['out_trade_no'];
$order = OrderToolModel::getInstance()->getOrderByOrderNum($order_num);
}
$logInfo['params'] = $data->toArray();
// 成功回调
if ($order) {
$urlParams = "?cmd_id=" . $order['cmd_id'];
if (isset($order['flow_params']) && $order['flow_params']) {
$urlParams .= "¶ms=" . $order['flow_params'];
}
return config('ypt.home_url', 'https://xx.com') . "/page/tools/tools.html" . $urlParams;
}
} catch (\Exception $e) {
// 写入错误日志查看
$logInfo['err'] = [
'line' => $e->getLine(),
'err' => $e->getMessage(),
];
throw new OpenApiException($e->getCode(), $e->getMessage());
} finally{
}
错误日志:
2022-05-04T21:37:41.877685+08:00 > yansongda.pay.INFO > Received Alipay Request
{"charset":"utf-8","out_trade_no":"362561826245836800",
"method":"alipay.trade.page.pay.return",
"total_amount":"10.00",
"sign":"Y42l7MwMhGaYwgglTerXhIjwee gpaN3dAzGSh8H3O5T2qW0hS4ckooZ2C3QeCdIo Wo4OoHOtkW6YU9oh/KPY9Vf0PPN6ziHPd
ERJdY26A7B ACth8NbNF7G1FGAyqTvSWVeJJv7Ou563/ntYwaD/JvRmNavLq08vgEXdZhJObL5ZqFiBSuDFlxwQfsBJGnPmDh2LsiyIgsx gTN2NU6zwoRXUnYrOtAhktuZJ0ZJXOqgRs0KC4XWhr4C21aczJQDkWPLhNE6b0mwFZ3XWExXKEXzCcFkJJEaysb 0wVhkJ3v324V/wUzMVuSeLpGO7YMO4OcoFy1OwiC43jCKW5Q==","trade_no":"2022050422001446771438854956","auth_app_id":"2019112269307813","version":"1.0","app_id":"2019112269307813","sign_type":"RSA2","seller_id":"2088631860391425","timestamp":"2022-05-04 19:39:47"}
2022-05-04T21:37:41.877884+08:00 > yansongda.pay.DEBUG > Alipay Generate Sign Content Before Trim [{"app_id":"2019112269307813","auth_app_id":"2019112269307813","charset":"utf-8","method":"alipay.trade.page.pay.return","out_trade_no":"362561826245836800","seller_id":"2088631860391425","sign":"Y42l7MwMhGaYwgglTerXhIjwee gpaN3dAzGSh8H3O5T2qW0hS4ckooZ2C3QeCdIo
Wo4OoHOtkW6YU9oh/KPY9Vf0PPN6ziHPd ERJdY26A7B ACth8NbNF7G1FGAyqTvSWVeJJv7Ou563/ntYwaD/JvRmNavLq08vgEXdZhJObL5ZqFiBSuDFlxwQfsBJGnPmDh2LsiyIgsxgTN2NU6zwoRXUnYrOtAhktuZJ0ZJXOqgRs0KC4XWhr4C21aczJQDkWPLhNE6b0mwFZ3XWExXKEXzCcFkJJEaysb0wVhkJ3v324V/wUzMVuSeLpGO7YMO4OcoFy1OwiC43jCKW5Q==","sign_type":"RSA2","timestamp":"2022-05-04 19:39:47","total_amount":"10.00","trade_no":"2022050422001446771438854956","version":"1.0"},"app_id=2019112269307813&auth_app_id=2019112269307813&chatset=utf8&method=alipay.trade.page.pay.return&out_trade_no=362561826245836800&seller_id=2088631860391425×tamp=2022-05-04 19:39:47&total_amount=10.00&trade_no=2022050422001446771438854956&version=1.0&"]
2022-05-04T21:37:41.914074+08:00 > yansongda.pay.WARNING > Alipay Sign Verify FAILED
{"charset":"utf-8","out_trade_no":"362561826245836800",
"method":"alipay.trade.page.pay.return",
"total_amount":"10.00","sign":"Y42l7MwMhGaYwgglTerXhIjwee gpaN3dAzGSh8H3O5T2qW0hS4ckooZ2C3QeCdIo
Wo4OoHOtkW6YU9oh/KPY9Vf0PPN6ziHPd ERJdY26A7B ACth8NbNF7G1FGAyqTvSWVeJJv7Ou563/ntYwaD/JvRmNavLq08vgEXdZhJObL5ZqFiBSuDFlxwQfsBJGnPmDh2LsiyIgsxgTN2NU6zwoRXUnYrOtAhktuZJ0ZJXOqgRs0KC4XWhr4C21aczJQDkWPLhNE6b0mwFZ3XWExXKEXzCcFkJJEaysb
0wVhkJ3v324V/wUzMVuSeLpGO7YMO4OcoFy1OwiC43jCKW5Q==","trade_no":"2022050422001446771438854956",
"auth_app_id":"2019112269307813","version":"1.0","app_id":"2019112269307813","sign_type":"RSA2",
"seller_id":"2088631860391425","timestamp":"2022-05-04 19:39:47"}
建议把config 也加入日志 看看 配置是否有变