一. 首先在自己的環境中進行模塊的下載
pip install python-alipay-sdk --upgrade
二. 進入螞蟻金服的開放平臺,下載生成RSA 密鑰的app
鏈接如下: 密鑰生成
三. 將生成的公鑰和私鑰放到alipay_config的兩個文件夾中
注意
:這時候需要將自己的應用公鑰交給支付寶,由支付寶生成支付寶公鑰,然後再將生成的應用公鑰放在自己公鑰文件內。並且保存頁面中的APPID
和支付寶網關
, 用於後面的配置。
支付寶公鑰生成地址: https://openhome.alipay.com/platform/appDaily.htm
注意
: 文件中必須以固定格式存儲
以-----BEGIN PUBLIC KEY-----
爲開頭
以-----END PUBLIC KEY-----
爲結尾
四. settings中配置公鑰和私鑰,並設置爲一個常量
PUBLIC_KEY = open(os.path.join(BASE_DIR,'alipay_config/alipay_rsa_public_key.pem'),'r').read()
PRIVATE_KEY = open(os.path.join(BASE_DIR,'alipay_config/app_rsa_private_key.pem'),'r').read()
五. 打開GitHub
進入到fzlee大牛的一篇文章中 : 點我點我
繼續複製初始化的代碼到自己的settings
中,
alipay = AliPay(
appid="2016102400751239", # APPID
app_notify_url=None, # 默認回調url
app_private_key_string = PRIVATE_KEY,
# 支付寶的公鑰,驗證支付寶回傳消息使用,不是你自己的公鑰,
# 支付寶的公鑰是通過你自己的公鑰驗籤之後生成的,
alipay_public_key_string = PUBLIC_KEY,
sign_type="RSA", # RSA 或者 RSA2
debug=False # 默認False
)
六.配置完成之後, 在路由函數中書寫代碼
注意
:手機網站支付,需要跳轉到https://openapi.alipay.com/gateway.do? + order_string
注意這裏的支付寶網關的是否發生更改:https://openapi.alipaydev.com/gateway.do
def pay(request):
# 此時alipay 對象的創建放在了 settings 中
subject = "身高168, 體重100斤, 膚色皙白, 活好"
order_string = alipay.api_alipay_trade_wap_pay(
out_trade_no="20161112",
total_amount=0.01,
subject=subject,
return_url="https://example.com",
notify_url="https://example.com/notify" # 可選, 不填則使用默認notify url
)
# 這裏alipay的網關可能會有變動
return redirect('https://openapi.alipaydev.com/gateway.do?' + order_string)