Closed lazychanger closed 5 months ago
在Plugin/Alipay/V2/ResponsePlugin这段代码中,直接开始检测sign,并没有对响应返回内容是否成功进行检验。
Plugin/Alipay/V2/ResponsePlugin
sign
https://github.com/yansongda/pay/blob/65cf1daa90e7ee4e57cc6f95735b8f42708ecfbe/src/Plugin/Alipay/V2/ResponsePlugin.php#L28C7-L33C10
当支付宝网关返回异常空_sign,并没有对响应体进行检测就直接开始进行签名检测。导致异常信息响应误导"签名异常: 验证支付宝签名失败-支付宝签名为空";
_sign
例如响应返回内容(日志记录):
{ "destination": { "_sign": "", "code": "40002", "msg": "Invalid Arguments", "sub_code": "isv.invalid-app-id", "sub_msg": "无效的AppID参数" } }
正确时候应该返回支付宝网关给出的异常msg例如alipay 40002: 无效的AppID参数或其他格式,现在的返回如下:
alipay 40002: 无效的AppID参数
要不帮忙尝试 PR 一下?
等我修完我的这个业务BUG🤣。
在
Plugin/Alipay/V2/ResponsePlugin
这段代码中,直接开始检测sign
,并没有对响应返回内容是否成功进行检验。https://github.com/yansongda/pay/blob/65cf1daa90e7ee4e57cc6f95735b8f42708ecfbe/src/Plugin/Alipay/V2/ResponsePlugin.php#L28C7-L33C10
当支付宝网关返回异常空
_sign
,并没有对响应体进行检测就直接开始进行签名检测。导致异常信息响应误导"签名异常: 验证支付宝签名失败-支付宝签名为空";例如响应返回内容(日志记录):