• 美多商城之支付宝支付


    1. 支付宝准备

        1.1 沙箱应用(包含测试账号)
        1.2 密钥(应用公私钥和支付宝公钥)
        1.3 支付宝SDK

    2. 订单支付功能

        2.1 核心思想:

            对接支付宝,向支付宝索取扫码登录页面,方便用户使用自己的支付宝登录到支付宝服务器

        2.2 实现方式:

            # 查询要支付的订单
            order = OrderInfo.objects.get(order_id=order_id, user=user, status=OrderInfo.ORDER_STATUS_ENUM['UNPAID'])
            # 创建支付宝支付对象
            alipay = AliPay()
            # 获取登录支付宝链接
            order_string = alipay.api_alipay_trade_page_pay()
            # 响应登录支付宝链接
            alipay_url = settings.ALIPAY_URL + "?" + order_string

    3. 保存订单支付结果

        3.1 核心思想:

            支付结束后,处理支付宝同步的回调请求,并验证该回调是否是支付宝发送的回调请求
            如果是,将美多商城维护的订单编号和支付宝维护的订单编号绑定到一起,并修改订单状态

        3.2 实现方式:

        # 获取前端传入的请求参数
        query_dict = request.GET
        data = query_dict.dict()
        # 获取并从请求参数中剔除signature
        signature = data.pop('sign')
        # 创建支付宝支付对象
        alipay = AliPay()
        # 校验这个重定向是否是alipay重定向过来的
        success = alipay.verify(data, signature)
        if success:
            # 验证通过
        else:
            # 验证失败

    该花的钱要花,该吃的饭要吃。
  • 相关阅读:
    钓鱼
    Webpack3.x升级至 4.x 小记
    设计模式六大原则(总结)
    Spring Data RedisTemplate抛出SerializationException
    pcap文件过滤、分割、合并处理工具
    如何查看Linux服务器的负载
    java8 List按照两个属性第一个属性升序排序第二个属性降序排序
    什么是云原生
    vuecli创建vue3项目
    nfs 问题汇总
  • 原文地址:https://www.cnblogs.com/chao666/p/12263673.html
Copyright © 2020-2023  润新知