-
Notifications
You must be signed in to change notification settings - Fork 1k
Description
包版本号
3.7.13
问题描述
#message: "签名异常: 微信签名为空"
#code: 9501
#file: "/www/wwwroot/new.ysjle.com/pintuan/vendor/yansongda/pay/src/Functions.php"
#line: 254
你的代码
try{
Pay::config($this->config);
$data = Pay::wechat()->callback(); // 是的,验签就这么简单!
} catch (\Throwable $e) {
dd($e);
}
报错详情
Yansongda\Pay\Exception\InvalidSignException {#155
+callback: array:2 [
"headers" => array:9 [
"Content-Length" => array:1 [
0 => "970"
]
"Host" => array:1 [
0 => "new.ysjle.com"
]
"Cache-Control" => array:1 [
0 => "no-cache"
]
"Content-Type" => array:1 [
0 => "application/json"
]
"Connection" => array:1 [
0 => "keep-alive"
]
"User-Agent" => array:1 [
0 => "PostmanRuntime-ApipostRuntime/1.1.0"
]
"Accept-Encoding" => array:1 [
0 => "gzip, deflate, br"
]
"Accept" => array:1 [
0 => "/"
]
"Ba-User-Token" => array:1 [
0 => "5f595dfb-1c32-43c5-91aa-d8c48d69c570"
]
]
"body" => """
{
"id": "daec3ded-53df-59a3-9c2e-09a7e2813d7b",
"create_time": "2025-03-23T11:16:40+08:00",
"resource_type": "encrypt-resource",
"event_type": "TRANSACTION.SUCCESS",
"summary": "支付成功",
"resource": {
"original_type": "transaction",
"algorithm": "AEAD_AES_256_GCM",
"ciphertext": "hIDm1wR9pZJeDqGGuIqfrRZtFiaG3kh/AiiCpdW0JqBNnhp9penYhS34FeU9k3J28PRXm4/C4qwQf3OwglXN+oYQATsQdF454f3gfFd9Y4pDZPyesz3M4oHS+rRIoNX0wqJGMb1j8kJJezCsdL5ganv5UV+3/p0ggFlm9S2zVU+sAsuPBil+uy7Y0BOFeKnVTo7tPKIM5tJ8SEemUeU62UN8I+zU7d0i04430xM3BCUbDiPJWyEpsb/iF9+U9oyowKcB7oXjyliNF7EN05FoPRtM6Aft94CfcuibXFjIyPT+h7etX+seiL4xBtzfRGqsUB0jOfcNXyd0X5RsAQ00p5EnQG6OgFAgIbdSrT4SF2cmvj3ivIK2hT7l+N6JrNTC8WHMx+Ooyt6fuC5IMouOW18OcZ8Jih0//rzR88//uX7Peg5sRCcDoN3NQCJLDD88YRu1X8THvtOqAfNoXbLxhF0AR1/dUAYK8enn5oe1v7Urhk4yocdNWBWbNd/q/75tUPHUcv2yhCxzRU0ycE9n06UPAjIBXsn54v7WpPKr6+UHeUF6Wgkx0kpr82nh",
"associated_data": "transaction",
"nonce": "wqTAspQ4Op7n"
}
}
"""
]
+extra: array:2 [
"headers" => array:9 [
"Content-Length" => array:1 [
0 => "970"
]
"Host" => array:1 [
0 => "new.ysjle.com"
]
"Cache-Control" => array:1 [
0 => "no-cache"
]
"Content-Type" => array:1 [
0 => "application/json"
]
"Connection" => array:1 [
0 => "keep-alive"
]
"User-Agent" => array:1 [
0 => "PostmanRuntime-ApipostRuntime/1.1.0"
]
"Accept-Encoding" => array:1 [
0 => "gzip, deflate, br"
]
"Accept" => array:1 [
0 => "/"
]
"Ba-User-Token" => array:1 [
0 => "5f595dfb-1c32-43c5-91aa-d8c48d69c570"
]
]
"body" => """
{
"id": "daec3ded-53df-59a3-9c2e-09a7e2813d7b",
"create_time": "2025-03-23T11:16:40+08:00",
"resource_type": "encrypt-resource",
"event_type": "TRANSACTION.SUCCESS",
"summary": "支付成功",
"resource": {
"original_type": "transaction",
"algorithm": "AEAD_AES_256_GCM",
"ciphertext": "hIDm1wR9pZJeDqGGuIqfrRZtFiaG3kh/AiiCpdW0JqBNnhp9penYhS34FeU9k3J28PRXm4/C4qwQf3OwglXN+oYQATsQdF454f3gfFd9Y4pDZPyesz3M4oHS+rRIoNX0wqJGMb1j8kJJezCsdL5ganv5UV+3/p0ggFlm9S2zVU+sAsuPBil+uy7Y0BOFeKnVTo7tPKIM5tJ8SEemUeU62UN8I+zU7d0i04430xM3BCUbDiPJWyEpsb/iF9+U9oyowKcB7oXjyliNF7EN05FoPRtM6Aft94CfcuibXFjIyPT+h7etX+seiL4xBtzfRGqsUB0jOfcNXyd0X5RsAQ00p5EnQG6OgFAgIbdSrT4SF2cmvj3ivIK2hT7l+N6JrNTC8WHMx+Ooyt6fuC5IMouOW18OcZ8Jih0//rzR88//uX7Peg5sRCcDoN3NQCJLDD88YRu1X8THvtOqAfNoXbLxhF0AR1/dUAYK8enn5oe1v7Urhk4yocdNWBWbNd/q/75tUPHUcv2yhCxzRU0ycE9n06UPAjIBXsn54v7WpPKr6+UHeUF6Wgkx0kpr82nh",
"associated_data": "transaction",
"nonce": "wqTAspQ4Op7n"
}
}
"""
]
#message: "签名异常: 微信签名为空"
#code: 9501
#file: "/www/wwwroot/new.ysjle.com/pintuan/vendor/yansongda/pay/src/Functions.php"
#line: 254
trace: {
/www/wwwroot/new.ysjle.com/pintuan/vendor/yansongda/pay/src/Functions.php:254 {
Yansongda\Pay\verify_wechat_sign(Psr\Http\Message\ResponseInterface|Psr\Http\Message\ServerRequestInterface $message, array $params): void …
› if (empty($sign)) {
› throw new InvalidSignException(Exception::SIGN_EMPTY, '签名异常: 微信签名为空', ['headers' => $message->getHeaders(), 'body' => $body]);
› }
}
/www/wwwroot/new.ysjle.com/pintuan/vendor/yansongda/pay/src/Plugin/Wechat/V3/CallbackPlugin.php:45 {
Yansongda\Pay\Plugin\Wechat\V3\CallbackPlugin->assembly(Rocket $rocket, Closure $next): Rocket …
› /* @phpstan-ignore-next-line */
› verify_wechat_sign($rocket->getDestinationOrigin(), $params);
›
}
sdk 日志
nginx/apache 日志
涉及到 异步通知、同步通知 的问题,请贴出来