paypal
paypal copied to clipboard
因为交易冻结的状态处理不正确,导致代码报错
如题,我收到了来自paypal的邮件,提示如下:
服务器在执行
payment, err := client.ExecuteApprovedPayment(req.PaymentID, req.PayerID)
if err != nil {
return errors.Wrap(err, "")
}
时,err是错误:
2021/08/23 18:37:38 : json: cannot unmarshal string into Go struct field Sale.transactions.related_resources.sale.payment_hold_reasons of type paypal.PaymentHoldReason
我怀疑是这里出了问题:
所以临时将那几句话注释掉了,但是不清楚这样改会不会有别的问题。
因为这个问题会导致用户没办法在付费后正确得到货物,还请尽快解决,谢谢!
如题,我收到了来自paypal的邮件,提示如下:
服务器在执行
payment, err := client.ExecuteApprovedPayment(req.PaymentID, req.PayerID) if err != nil { return errors.Wrap(err, "") }
时,err是错误:
2021/08/23 18:37:38 : json: cannot unmarshal string into Go struct field Sale.transactions.related_resources.sale.payment_hold_reasons of type paypal.PaymentHoldReason
我怀疑是这里出了问题:
所以临时将那几句话注释掉了,但是不清楚这样改会不会有别的问题。
因为这个问题会导致用户没办法在付费后正确得到货物,还请尽快解决,谢谢!
顺便解释一下,用户最终还是会获得的,因为我也处理了webhook。但是因为这里报错,导致之后的逻辑没有处理,我也不能忽视其他的错误,所以只能先这么处理一下了。源代码这么处理我是没看懂为什么,所以还请作者尽快查看一下…!
这个错误和paypal 发你的邮件应该没有任何关系。
这个错误是 json 解析的时候类型不匹配,需要你把上图中的 data 打印出来看看。
暂时这样修改以后还没遇到问题,我收集一下data数据后再反馈过来吧。