我正在将 PayPal 订阅集成到 Django 项目中。我让它运行良好,但我认为恶意者可能可以模拟 Webhook 调用并获得免费订阅。目前我无法验证 webhook 是否真的来自 PayPal。
在其他支付系统中,我可以在调用中设置一个 secret 词(来自服务提供商),然后在应用服务器中通过该 secret 词验证调用。
最佳答案
有几种可能的方法...
将其发回 PayPal,https://developer.paypal.com/docs/api/webhooks/v1/#verify-webhook-signature
检查加密签名,https://developer.paypal.com/docs/api-basics/notifications/webhooks/notification-messages/
在原始交易中包含将返回的
custom_id
,https://developer.paypal.com/docs/api/orders/v2/#definition-purchase_unit_request
请勿使用 PayPal-*-SDK 之一,因为它们已被弃用。
关于paypal - 如何验证 PayPal webhook JSON 消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67573035/