【问题标题】:Browser Content Security Policy Issue in paypal SDK integration贝宝 SDK 集成中的浏览器内容安全策略问题
【发布时间】:2020-07-18 09:37:29
【问题描述】:

我正在 python Django 环境中集成 paypal 支付系统。现在,根据基本准则,付款创建如下,

payment = Payment({
  "intent": "sale",

  # Set payment method
  "payer": {
    "payment_method": "paypal"
  },

  # Set redirect URLs
  "redirect_urls": {
    "return_url": "http://localhost:3000/process",
    "cancel_url": "http://localhost:3000/cancel"
  },

  # Set transaction object
  "transactions": [{
    "amount": {
      "total": "10.00",
      "currency": "USD"
    },
    "description": "payment description"
  }]
})

 

if payment.create():
  for link in payment.links:
    if link.method == "REDIRECT":
      redirect_url = (link.href)
      return redirect_url
    return False
else:
   print(payment.error)
   return False

现在,它会正确生成重定向 URL。但是在进入 url(支付页面)之后,我在谷歌浏览器和 Mozilla Firefox 中都得到了一个错误列表。现在该错误与 CSP 有关,但这不在我手中,因为规则在 paypal 页面本身中提到。有什么出路吗?我是不是弄错了一些设置或代码?

【问题讨论】:

  • 页面加载完成了吗?您是否在抱怨不影响功能的错误?
  • 否,页面未加载。它每次都显示一个贝宝错误页面。

标签: python python-3.x django paypal-sandbox paypal-rest-sdk


【解决方案1】:

尝试其他浏览器

无论如何,您在后端(已停产的 v1/支付服务器 SDK)级别和前端(整页重定向)都使用过时的集成

这是您应该使用的 v2 服务器 SDK:https://github.com/paypal/Checkout-Python-SDK,您需要两条路由,一条用于“设置事务”,一条用于“捕获事务”,记录在此:https://developer.paypal.com/docs/checkout/reference/server-integration/

对于现代网页设计,最好搭配“上下文”用户界面,让您的网站在后台加载,这是一个示例:https://developer.paypal.com/demo/checkout/#/pattern/server

【讨论】:

    猜你喜欢
    • 2021-01-11
    • 2021-09-28
    • 1970-01-01
    • 2017-05-11
    • 2021-06-11
    • 1970-01-01
    • 2016-04-20
    • 2017-10-26
    • 2011-03-19
    相关资源
    最近更新 更多