电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

python接入支付寶的實(shí)例操作

瀏覽:135日期:2022-07-16 17:46:12

Python接入支付寶流程:

第一步:

首先要下載一個(gè)python的sdk,這個(gè)sdk在支付寶的開發(fā)者文檔中是沒有的,但是強(qiáng)大的python程序員自己開發(fā)了一套屬于python的支付寶支付sdk。

下載方式:pip install python-alipay-sdk ,github的鏈接為 https://github.com/fzlee/alipay

第二步:

下載好sdk之后,需要對(duì)支付寶進(jìn)行一些相關(guān)的配置,支付寶的環(huán)境分為兩種,一為正式環(huán)境,也就是程序上線之后的環(huán)境。

二為沙箱環(huán)境,即開發(fā)者在開發(fā)項(xiàng)目時(shí)候的測(cè)試環(huán)境。

正式環(huán)境需要?jiǎng)?chuàng)建應(yīng)用,然后支付寶后臺(tái)進(jìn)行審核,通過后會(huì)分配一個(gè)appid作為一個(gè)唯一標(biāo)志。如圖為創(chuàng)建應(yīng)用。

python接入支付寶的實(shí)例操作

這里我用到的是沙箱環(huán)境,所以不需要等待支付寶的審核,點(diǎn)擊進(jìn)入開發(fā)者中心?>研發(fā)服務(wù)?>沙箱應(yīng)用。如圖所示它會(huì)自動(dòng)給你分配一個(gè)appid,你只需要這是一下私鑰和公鑰即可。

python接入支付寶的實(shí)例操作

第三步:

需要生成自己的服務(wù)端的私鑰和公鑰,現(xiàn)在支付寶支持的加密方式為sha256,sha1,

推薦使用sha256.支付寶提供了生成秘鑰的方法和步驟(https://docs.open.alipay.com/291/105971/ )

打開括號(hào)中的鏈接,即可看到詳細(xì)的生成秘鑰的方法和步驟。公鑰私鑰生成完之后,要將公鑰上傳到支付寶密鑰設(shè)置中。將支付寶的公鑰copy到本地,將自己的公鑰私鑰和支付寶的公鑰保存好(這個(gè)很重要),一般都保存到本地項(xiàng)目的文件中。

第四步:

了解并熟悉支付寶的開發(fā)流程。如圖為客戶端通過后端程序與支付寶后端的交互流程圖

python接入支付寶的實(shí)例操作

1、用戶選擇使用支付寶付款

2、用戶使用app向商戶服務(wù)器發(fā)起請(qǐng)求獲取簽名后的訂單信息

3、商戶服務(wù)端返回簽名后的訂單信息(查詢字符串或者url)例如:

app_id=201609239&biz_content=%7B%22subject%22%3A%22%5Cu6d4b%5Cu8bd5%5Cu8ba2%5Cu5%22out_trade_no%22%3A%22201702021111%22%2C%22total_amount%22%3A1000%2C%22product_code%22%3A%22FAST_INSTANT_TRADE_PAY%22%7D&charset=utf-8&method=alipay.trade.page.pay&notify_url=http%3A%2F%dus.com%2F&return_url=http%3A%2F%2F47.92.87.172%3A8000%2F&sign_type=RSA2&timestamp=2015+15%3A19%3A15&version=1.0&sign=BSzk6LzwNp

4、商戶app調(diào)用支付接口

5-8、支付寶服務(wù)端接收請(qǐng)求,返回支付結(jié)果。

9、商戶app向商戶服務(wù)端發(fā)起請(qǐng)求,同步支付結(jié)果,服務(wù)端驗(yàn)證簽名,解析支付結(jié)果。

10、返回支付結(jié)果。

11、商戶app展示支付結(jié)果。

12、支付寶服務(wù)端向商戶服務(wù)端異步發(fā)送支付通知。

13、商戶服務(wù)端接收支付通知,并返回響應(yīng)給支付寶服務(wù)端。

第五步:

python代碼如下

# 業(yè)務(wù)處理: 使用python sdk調(diào)用支付寶的支付接口# 初始化from alipay import AliPayalipay = AliPay( appid='2016092300574189', app_notify_url=None, app_private_key_path=r'D:python源代碼alipay_keysprivate_keys', alipay_public_key_path=r'D:python源代碼alipay_keyspublic_key', sign_type='RSA2', debug=True,)# 調(diào)用接口# total_pay = order.total_price + order.transit_pricetotal_pay = 12311order_string = alipay.api_alipay_trade_page_pay( out_trade_no=1231231312313, total_amount=str(total_pay), subject=’測(cè)試text%s’ % 1, return_url=None, notify_url=None,)# 返回應(yīng)答pay_url = 'https://openapi.alipaydev.com/gateway.do?' + order_stringprint(pay_url)

這段代碼實(shí)現(xiàn)的功能為生成一個(gè)簽名后的url,這個(gè)url就是訪問支付寶支付的url

其中初始化部分的參數(shù):appid為支付寶的唯一標(biāo)志id,

app_notify_url為支付寶后臺(tái)完成支付的時(shí)候異步通知到商戶的后臺(tái)服務(wù)器的URL地址。

app_private_key_path為自己生成的私鑰,

alipay_public_key_path為支付寶的公鑰。sign_type為簽名的加密方式,

debug為true時(shí),支付寶的支付的url為非正式的環(huán)境,如果為線上環(huán)境可以將其改為false。

調(diào)用接口部分的參數(shù): out_trade_no為訂單編號(hào)這個(gè)是商戶后臺(tái)服務(wù)器自己生成的訂單編號(hào)。

total_amount為支付金額(必須為字符串類型),subject為標(biāo)題,return_url為支付成功后支付頁面要跳轉(zhuǎn)到哪個(gè)頁面。

notify_url為異步通知的url。

第六步:

運(yùn)行這段代碼會(huì)得到一個(gè)簽名之后的url。

python接入支付寶的實(shí)例操作

訪問這個(gè)url,看到的結(jié)果為:

python接入支付寶的實(shí)例操作

可以手機(jī)下載一個(gè)沙箱環(huán)境的支付寶,也可以點(diǎn)擊右側(cè)的登錄賬戶付款。在沙箱應(yīng)用中提供了用于付款的賬號(hào)和密碼。

第七步:

登錄完成支付

python接入支付寶的實(shí)例操作

實(shí)例擴(kuò)展:

Python對(duì)接支付寶支付自實(shí)現(xiàn)功能

# -*- coding: utf-8 -*-import base64import jsonimport urllib.parsefrom datetime import datetimeimport requestsfrom cryptography.hazmat.backends import default_backendfrom cryptography.hazmat.primitives import hashesfrom cryptography.hazmat.primitives import serializationfrom cryptography.hazmat.primitives.asymmetric import paddingclass AliPayException(Exception): def __init__(self, data): super(AliPayException, self).__init__() self.data = data def __str__(self): return 'alipay - {}'.format(self.data) def __unicode__(self): return u'alipay - {}'.format(self.data)class AliPayVerifyException(AliPayException): def __init__(self, msg, data): super(AliPayVerifyException, self).__init__(’alipay verify except - {}:{}’.format(msg, data))class AliPay: def __init__(self, **kwargs): ''' :param kwargs:

到此這篇關(guān)于python接入支付寶的實(shí)例操作的文章就介紹到這了,更多相關(guān)python如何接入支付寶內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: 支付寶 Python
相關(guān)文章:
主站蜘蛛池模板: 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 陕西高职单招-陕西高职分类考试网| 热风机_工业热风机生产厂家上海冠顶公司提供专业热风机图片价格实惠 | 免费B2B信息推广发布平台 - 推发网 | 金联宇电缆总代理-金联宇集团-广东金联宇电缆实业有限公司 | 电缆桥架生产厂家_槽式/梯式_热镀锌线槽_广东东莞雷正电气 | 广州/东莞小字符喷码机-热转印打码机-喷码机厂家-广州瑞润科技 | 酒糟烘干机-豆渣烘干机-薯渣烘干机-糟渣烘干设备厂家-焦作市真节能环保设备科技有限公司 | 搜木网 - 木业全产业链交易平台,免费搜货、低价买货! | 铆钉机|旋铆机|东莞旋铆机厂家|鸿佰专业生产气压/油压/自动铆钉机 | 玻璃瓶厂家_酱菜瓶厂家_饮料瓶厂家_酒瓶厂家_玻璃杯厂家_徐州东明玻璃制品有限公司 | 顶空进样器-吹扫捕集仪-热脱附仪-二次热解吸仪-北京华盛谱信仪器 | 扬尘在线监测系统_工地噪声扬尘检测仪_扬尘监测系统_贝塔射线扬尘监测设备「风途物联网科技」 | 钢板仓,大型钢板仓,钢板库,大型钢板库,粉煤灰钢板仓,螺旋钢板仓,螺旋卷板仓,骨料钢板仓 | 医养体检包_公卫随访箱_慢病随访包_家签随访包_随访一体机-济南易享医疗科技有限公司 | 钢板仓,大型钢板仓,钢板库,大型钢板库,粉煤灰钢板仓,螺旋钢板仓,螺旋卷板仓,骨料钢板仓 | 安徽控制器-合肥船用空调控制器-合肥家电控制器-合肥迅驰电子厂 安徽净化板_合肥岩棉板厂家_玻镁板厂家_安徽科艺美洁净科技有限公司 | 对辊式破碎机-对辊制砂机-双辊-双齿辊破碎机-巩义市裕顺机械制造有限公司 | 丹佛斯变频器-丹佛斯压力开关-变送器-广州市风华机电设备有限公司 | 大学食堂装修设计_公司餐厅效果图_工厂食堂改造_迈普装饰 | 西装定制/做厂家/公司_西装订做/制价格/费用-北京圣达信西装 | 破碎机_上海破碎机_破碎机设备_破碎机厂家-上海山卓重工机械有限公司 | 哈希PC1R1A,哈希CA9300,哈希SC4500-上海鑫嵩实业有限公司 | 哈希余氯测定仪,分光光度计,ph在线监测仪,浊度测定仪,试剂-上海京灿精密机械有限公司 | 土壤有机碳消解器-石油|表层油类分析采水器-青岛溯源环保设备有限公司 | 防弹玻璃厂家_防爆炸玻璃_电磁屏蔽玻璃-四川大硅特玻科技有限公司 | 超声波电磁流量计-液位计-孔板流量计-料位计-江苏信仪自动化仪表有限公司 | 万濠影像仪(万濠投影仪)百科-苏州林泽仪器 | 样品瓶(色谱样品瓶)百科-浙江哈迈科技有限公司 | 发电机组|柴油发电机组-批发,上柴,玉柴,潍柴,康明斯柴油发电机厂家直销 | NMRV减速机|铝合金减速机|蜗轮蜗杆减速机|NMRV减速机厂家-东莞市台机减速机有限公司 | 对辊式破碎机-对辊制砂机-双辊-双齿辊破碎机-巩义市裕顺机械制造有限公司 | POM塑料_PBT材料「进口」聚甲醛POM杜邦原料、加纤PBT塑料报价格找利隆塑料 | 桑茶-七彩贝壳桑叶茶 长寿茶 | 铣床|万能铣床|立式铣床|数控铣床|山东滕州万友机床有限公司 | 包装机传感器-搅拌站传感器-山东称重传感器厂家-济南泰钦电气 | 数码听觉统合训练系统-儿童感觉-早期言语评估与训练系统-北京鑫泰盛世科技发展有限公司 | 洗地机_全自动洗地机_手推式洗地机【上海滢皓环保】 | 成都APP开发-成都App定制-成都app开发公司-【未来久】 | 高空重型升降平台_高空液压举升平台_高空作业平台_移动式升降机-河南华鹰机械设备有限公司 | 郑州水质检测中心_井水检测_河南废气检测_河南中环嘉创检测 |