作者:阳光-沙滩男人 | 来源:互联网 | 2023-08-27 07:18
一.python-alipay-sdk安装下载:卸载pycrypto(如有)安装python-alipay-sdk二.生成密钥文件1.使用OpenSSL2.生成私钥3.生成公钥4.
一. python-alipay-sdk 安装下载:
卸载pycrypto(如有)
安装python-alipay-sdk
pip install python-alipay-sdk
二.生成密钥文件
1. 使用OpenSSL
2. 生成私钥
genrsa -out app_private_key.pem 2048
3. 生成公钥
rsa -in app_private_key.pem -pubout -out app_public_key.pem
4. 退出OpenSSL
三.登录支付宝绑定己方公钥, 获取后方公钥(沙箱):
https://sandbox.alipaydev.com/user/accountDetails.htm?currentBar=1
四.初始化:
项目文件中,定位己方私钥和以及他方公钥,并进行初始化.
import os
from alipay import AliPay
from django.conf import settings
# 进行alipay初始化
# 配置地址
private_path = os.path.join(settings.BASE_DIR, ‘apps/order/app_private_key.pem‘)
public_path = os.path.join(settings.BASE_DIR, ‘apps/order/alipay_public_key.pem‘)
# 获取公私钥字符串
app_private_key_string = open(private_path).read()
alipay_public_key_string = open(public_path).read()
alipay = AliPay(
appid="2016101100664228",
app_notify_url=None, # 默认回调url
app_private_key_string=app_private_key_string,
alipay_public_key_string=alipay_public_key_string,
sign_type="RSA2",
debug=True, # 上线则改为False , 沙箱True
)
五.使用:
# 调用接口(传参订单号和总价,标题)
order_string = alipay.api_alipay_trade_page_pay(
out_trade_no=order_id,
total_amount=str(total_pay),
subject=‘支付订单:%s‘ % order_id,
return_url=None,
notify_url=None,
)
# 拼接应答地址
pay_url = ‘https://openapi.alipaydev.com/gateway.do?‘ + order_string
返回应答pay_url即可.