buyaozaixiaole 2020-07-09 20:01 采纳率: 0%
浏览 576

flask调用支付宝网站支付报错Cross-Origin Read Blocking (CORB) blocked cross-origin response

最近学习一个flask项目,最后支付环节出问题,跳转到支付宝的接口后一直报
Cross-Origin Read Blocking (CORB) blocked cross-origin response,
还有
A cookie associated with a cross-site resource at was set without the SameSite attribute. A future release of Chrome will only deliver cookies with cross-site requests if they are set with SameSite=None and Secure. You can review cookies in developer tools under Application>Storage>Cookies and see more details at and .
要么就显示系统繁忙,请稍后重试
图片说明
自己上网搜问题做过下面的处理
1.chrome://flags 中修改**SameSite by default cookie**s和**Cookies without SameSite must be secure**两项为disabled
2.安装cors包,初始化app**CORS(app, supports_credentials=True)**
以上均没有效果
下面是代码

# 创建支付宝sdk的工具对象
    alipay_client = AliPay(
        appid="2016102100733966",
        app_notify_url=None,  # 默认回调url
        app_private_key_string=open(os.path.join(os.path.dirname(__file__), "keys/app_private_key.pem"), "r").read(),
        # 私钥
        alipay_public_key_string=open(os.path.join(os.path.dirname(__file__), "keys/alipay_public_key.pem"), "r").read(),
        # 支付宝的公钥,验证支付宝回传消息使用,不是你自己的公钥,
        sign_type="RSA2",  # RSA 或者 RSA2
        debug=True  # 默认False
    )

    # 手机网站支付,需要跳转到https://openapi.alipaydev.com/gateway.do? + order_string
    order_string = alipay_client.api_alipay_trade_wap_pay(
        out_trade_no=order.id,  # 订单编号
        total_amount=str(order.amount / 100.0),  # 总金额
        subject="爱家租房 %s" % order.id,  # 订单标题
        return_url="http://192.168.10.110:5000/paycomplete.html",  # 返回的连接地址
        notify_url=None  # 可选, 不填则使用默认notify url
    )

    # 构建让用户跳转的支付连接地址
    pay_url = alipay_client._gateway + "?" + order_string

    return jsonify(errno=RET.OK, errmsg="OK", data={"pay_url": pay_url})

前端js

$.ajax({
                    url: "/api/v1.0/orders/" + orderId + "/payment",
                    type: "post",
                    dataType: "json",
                    headers: {
                        "X-CSRFToken": getCookie("csrf_token"),
                    },
                    success: function (resp) {
                        if ("4101" == resp.errno) {
                            location.href = "/login.html";
                        } else if ("0" == resp.errno) {
                            // 引导用户跳转到支付宝连接
                            location.href = resp.data.pay_url;
                        }
                    }
                });
  • 写回答

1条回答 默认 最新

  • dabocaiqq 2020-08-02 09:38
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值