# This is a sample Python script.
import hashlib
import json
import urllib
from urllib import request, parse
global_userId = ""
global_UrlId = ""
global_CallBackUrl = "https://www.baidu.com/"
def paymentT():
params = {
"userId": global_userId,
"money": "1",
"remark": "测试",
"shopId": "iphone",
"urlId": global_UrlId,
"orderType": "01",
"thirdOrderId": "1234567",
"callbackUrl": global_CallBackUrl
}
sorted_params = sorted(params.items(), key=lambda x: x[0]) # 按照字典键(k)的首字母排序
param_str = '&'.join([f"{k}={v}" for k, v in sorted_params]) # 拼接参数字符串
# 创建MD5加密对象
md5 = hashlib.md5()
# 将参数字符串转换为字节类型,并使用MD5加密
md5.update(param_str.encode('utf-8'))
# 获取加密后的结果
encrypted_str = md5.hexdigest()
params.update({"sign": encrypted_str})
return params
# return params
def payData(orderId):
params = {
"orderId": orderId,
"money": "1",
"urlId": global_UrlId,
"shop": "iphone"
}
return params
# 发起post请求
def requestPost(body, hostUrl):
josnData = json.dumps(body).encode('utf-8')
print(josnData)
req = request.Request(hostUrl, data=josnData, headers={'Content-Type': 'application/json'})
response = urllib.request.urlopen(req)
orderid = response.read().decode('utf-8')
return orderid
if name == '__main__':
host = "https://alipay.hhfpay.com/api/"
# host = "http://localhost:8201/"
payment = host + "pay/alipay/payment"
pay = host + "pay/alipay/pay"
orderId = requestPost(paymentT(), payment)
print(orderId)
# 读取订单号
resBody = json.loads(orderId)
orderNumber = resBody["data"]
# 发起支付
if orderNumber is not None:
print(payData(orderNumber))
resPay = requestPost(payData(orderNumber), pay)
print(resPay)
else:
print("订单号获取失败")
开箱即用,自己变更一些应用参数即可
THE END
暂无评论内容