沙箱环境搭建

测试环境搭建

沙箱环境:

-------测试环境搭建

基础配置:

# 1、在沙箱环境下实名认证:https://openhome.alipay.com/platform/appDaily.htm?tab=info

# 2、电脑网站支付API:https://docs.open.alipay.com/270/105898/

# 3、完成RSA密钥生成:https://docs.open.alipay.com/291/105971
    下载软件: 开发助手

# 4、在开发中心的沙箱应用下设置应用公钥:填入生成的公钥文件中的内容
    用公钥 换取alipay对象的公钥

# 5、Python支付宝开源框架:https://github.com/fzlee/alipay
    github 开发文档 (多种)
# >: pip install python-alipay-sdk --upgrade

 6.公私钥配置:
        # alipay_public_key.pem
        -----BEGIN PUBLIC KEY-----
        支付宝公钥
        -----END PUBLIC KEY-----

        # app_private_key.pem
        -----BEGIN RSA PRIVATE KEY-----
        用户私钥
        -----END RSA PRIVATE KEY-----
        """
    注意: 不能留空格!!!

 7.支付宝链接:
    开发:https://openapi.alipay.com/gateway.do
    沙箱:https://openapi.alipaydev.com/gateway.do

支付流程:

支付模块的创建:

aliapy 二次封装:
    https://github.com/fzlee/alipay  开源文档

下载:
    >: pip install python-alipay-sdk --upgrade
    >: pip install pyopenssl
节构:
    libs
    ├── iPay                            # aliapy二次封装包
    │   ├── __init__.py                 # 包文件
    │   ├── pay.py                      # 支付文件
    └── └── settings.py                 # 应用配置  

settings.py

# 应用ID
APP_ID = "2016093000631831"

# 是否是沙箱环境
DEBUG = True

# 签名算法 RSA or RSA2
SIGN = 'RSA2'

# 网关
if DEBUG:
    GATEWAY = 'https://openapi.alipaydev.com/gateway.do?'
else:
    GATEWAY = 'https://openapi.alipay.com/gateway.do?'

# 应用私钥:首行尾行是固定的,中间是一行私钥字符串(不能有其他字符)
APP_PRIVATE_KEY_STRING = """-----BEGIN RSA PRIVATE KEY-----
MIIEd.......
-----END RSA PRIVATE KEY-----"""

# 阿里公钥:首行尾行是固定的,中间是一行公钥字符串(不能有其他字符)
ALIPAY_PUBLIC_KEY_STRING = """-----BEGIN PUBLIC KEY-----
MIIBIjAN......
-----END PUBLIC KEY-----"""

pay.py:

from alipay import AliPay
from .settings import *

alipay = AliPay(
    appid=APP_ID,
    app_notify_url=None,  # 该通知接口一般都设置None
    # 应用私钥
    app_private_key_string=APP_PRIVATE_KEY_STRING,
    # 阿里pay公钥
    alipay_public_key_string=ALIPAY_PUBLIC_KEY_STRING,
    # 签名算法,采用RSA2
    sign_type=SIGN,  # RSA or RSA2
    # 是否是沙箱环境
    debug=DEBUG
)

 # __init__.py:

# 对外提供配置生成好的 alipay 支付对象
from .pay import alipay
# 对外提供alipay的支付网关
from .settings import GATEWAY as alipay_gateway

补充:

补充:在自己项目的配置文件中配置支付宝回调接口:settings.py | dev.py | const.py

# 上线后必须换成公网地址
# 后台http根路径
BASE_URL = 'http://127.0.0.1:8000'

# 前台http根路径
LUFFY_URL = 'http://127.0.0.1:8080'

# 订单支付成功的后台异步回调接口 (公网地址 --- 服务器)
NOTIFY_URL = BASE_URL + '/order/success'

# 订单支付成功的前台同步回调接口 (公网地址 --- 服务器)
RETURN_URL = LUFFY_URL + '/pay/success'

猜你喜欢

转载自www.cnblogs.com/shaozheng/p/12194200.html