【问题标题】:Secure paypal buttons with django-paypal使用 django-paypal 保护贝宝按钮
【发布时间】:2010-11-05 15:49:29
【问题描述】:
我想听听您对如何使用 django-paypal 制作安全按钮的意见。我确实有一个基于订阅的网站,如果可能的话,我不想使用 django-paypal 支持的加密按钮。
此外,我认为无法使用 paypal 提供的受保护付款按钮(您不通过按钮发送金额、期限、...但将此信息保存在 paypal 端的那些按钮) .)
所以我能想到的唯一其他选择是使用贝宝发送的 IPN 信息并将其与我的付款计划进行比较(这对我来说实际上看起来很安全)。这是正确的,还是有其他选择?
【问题讨论】:
标签:
django
paypal
django-paypal
【解决方案1】:
您的想法很好,并且会奏效。您可以在 IPN 进入时对其进行一些健全性检查。
def handle_ipn(sender, **kwargs):
ipn_obj = sender
gross = str(ipn_obj.mc_gross)
currency = str(ipn_obj.mc_currency)
if ipn_obj.item_name == 'myproduct' and
ipn_obj.custom == 'mycustom' and
currency == 'USD' and gross == '99.00':
# Do stuff here...
这在简单的情况下可以很好地工作,但在您有多种价格、产品、货币或代金券的情况下,它会变得更加繁琐。