条纹结账.检查客户金额
Stripe checkout. Checking client amount
是否可以检查客户端看到的数量和服务器看到的数量是否相同?
在这里,我在客户端设置金额:
<script src="https://checkout.stripe.com/checkout.js"></script>
<button id="customButton">Purchase</button>
<script>
var handler = StripeCheckout.configure({
key: 'pk_test_1002UFB11gJ1sXBHcdDM8HPi',
image: '/square-image.png',
token: function(token) {
// Use the token to create the charge with a server-side script.
// You can access the token ID with `token.id`
}
});
document.getElementById('customButton').addEventListener('click', function(e) {
// Open Checkout with further options
handler.open({
name: 'Demo Site',
description: '2 widgets ($20.00)',
amount: 2000
});
e.preventDefault();
});
// Close Checkout on page navigation
window.addEventListener('popstate', function() {
handler.close();
});
</script>
我正在将令牌从客户端条带回调发送到服务器:
<?php
require_once(dirname(__FILE__) . '/config.php');
$token = $_POST['stripeToken'];
$charge = Stripe_Charge::create(array(
'customer' => $customer->id,
'amount' => 1000000000000,
'currency' => 'usd'
'email' => 'customer@example.com',
'card' => $token
));
echo '<h1>Successfully charged $2!</h1>';
?>
客户端数量明显低于服务器端的数量,stripe 对服务器端数量收费。
我们这样做的方法是让服务器检查它。
我们拥有的流程是:
- 客户端对后端进行 API 调用,以获取它应该为产品收取的价格。
- 客户端调用条带 API 获取令牌,并向客户端显示步骤 1 中的金额
- 客户端获得令牌后,调用后端 API 以通过令牌和金额进行收费(我们称之为对帐金额)。
- 在后端,在调用条带创建费用 API 之前,我们首先通过将步骤 3 中客户端提供的金额与产品应为的金额(从步骤 1 开始)进行比较来协调金额。如果这些不匹配,我们将不继续并向客户端返回错误。
相关文章:
- 货币代码为欧元-金额的格式不应包含小数
- 客户端服务器REST API captcha实现
- 在输入字段中将最小金额设置为
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 如何使用Socket.io将命令从客户端发送到服务器
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- Meteor方法在客户端返回null,在客户端运行的相同方法返回正确的值
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 如何将我的javascript库公开给其他客户端使用
- 改进用于验证付款金额的正则表达式
- 是否可以使用JavaScript/AAJAX在客户端创建一个文件
- 如何使用Javascript客户端对象模型检索Sharepoint 2010列表项权限
- 返回/从Twit's客户端.get
- 将客户端特定的日期格式返回到服务器MVC4
- MobileFirst:在客户端运行计时器作业-最佳选项
- 标签客户端的设置值
- 我的客户端选项是什么
- Node.js上的WebSocket,并在所有连接的客户端之间共享消息
- PayPal按钮,允许客户为金额范围选择具有不同价格的产品数量
- 条纹结账.检查客户金额