本文介绍 Python、PHP 和 JSP 三种技术栈开发支付页面的实现方式。
1. Python 支付页面开发
Flask 框架示例
from flask import Flask, render_template, request, jsonify
import hashlib
import time
import requests
app = Flask(__name__)
@app.route('/payment')
def payment_page():
"""支付页面"""
order_info = {
'order_no': '202401150001',
'amount': '100.00',
'product_name': '测试商品'
}
return render_template('payment.html', order=order_info)
@app.route('/create_payment', methods=['POST'])
def create_payment():
"""创建支付订单"""
data = request.json
order_no = data.get('order_no')
amount = data.get('amount')
# 调用支付宝/微信支付接口
payment_data = {
'out_trade_no': order_no,
'total_amount': amount,
'subject': '商品支付',
'timestamp': str(int(time.time()))
}
# 生成签名
sign = generate_sign(payment_data)
payment_data['sign'] = sign
return jsonify({
'success': True,
: payment_data,
:
})
():
callback_data = request.form.to_dict()
verify_sign(callback_data):
update_order_status(callback_data[], )
():
sorted_data = (data.items())
sign_str = .join([ k, v sorted_data])
sign_str +=
hashlib.md5(sign_str.encode()).hexdigest()
():
sign = data.pop(, )
local_sign = generate_sign(data)
sign == local_sign


