[英]How to get paypal smart payment button response to Flask
我正在嘗試在我的 Flask 項目中設置 Paypal 付款。 我正在從 Paypal 復制智能支付按鈕代碼並粘貼到我的模板中。 javascript 中的付款流程有效購買響應詳細信息。 我如何才能將響應返回給我的 Flask 應用程序,以便我可以確認付款?
這是在我的模板中:
<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=fake¤cy=USD" data-sdk-integration-source="button-factory"></script>
<script>
paypal.Buttons({
style: {
shape: 'pill',
color: 'gold',
layout: 'vertical',
label: 'paypal',
},
//method: 'POST',
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{
amount: {
value: '10'
}
}]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(details) {
// Show a success message to the buyer
// window.write('Transaction completed by ' + details.payer.name.given_name + '!');
console.log("success");
return details;
})
}
}).render('#paypal-button-container');
</script>
和應用程序代碼:
@app.route('/upgrade/<username>', methods=['GET','POST'])
@login_required
def upgrade(username):
user = User.query.filter_by(username=username).first()
result = request.get_json()
flash(result)
return render_template('upgrade.html', user=user)
flash 消息返回空字典。
Flask 是一個服務器框架,因此您應該使用以下前端 UI: https://developer.paypal.com/demo/checkout/#/patternserver/
並將其與服務器上的兩條相應路由配對,一條用於“設置事務”,一條用於“捕獲事務”,記錄在此: https://developer.paypal.com/docs/checkout/reference/server-integration/
您可以在這些調用中使用 Checkout-Python-SDK。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.