gpt4 book ai didi

c# - 使用 token 结账

转载 作者:太空宇宙 更新时间:2023-11-03 10:22:04 26 4
gpt4 key购买 nike

我正在尝试使用 checkout.com 从信用卡中扣款。我正在使用带卡 token 的费用。我已经使用 checkoutkit.js 生成了卡 token 。并将该 token 传递给我的 Controller ,我正在那里进行付款。但我没有得到回应返回。即使在 Debug模式下,它也不会移动到下一行。我的 View 和 Controller 代码:

        <script>
window.CKOConfig = {
debugMode: true,
publicKey: 'pk_test_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac',
customerEmail: 'random@email.com',
ready: function (event) {
console.log("CheckoutKit.js is ready");
CheckoutKit.monitorForm('.card-form', CheckoutKit.CardFormModes.CARD_TOKENISATION);
},
apiError: function (event) {
alert('api error');
},
cardTokenised: function(e) {
$.ajax({
type: 'POST',
url: '@Url.Action("Charge")',
data: { cardToken: e.data.id },
success: function (data) {
alert(data);
location.reload();
},
error: function() {
alert('error');
}
});
}
};
</script>

<script async src="https://sandbox.checkout.com/js/v1/checkoutkit.js"></script>

<div class="jumbotron">
<form class="card-form" method="POST">
<input data-checkout="email-address" type="email" placeholder="Email address">
<input data-checkout="card-number" type="text" placeholder="Credit card number">
<input data-checkout="card-name" type="text" placeholder="Name on card">
<input data-checkout="expiry-month" type="text" placeholder="MM">
<input data-checkout="expiry-year" type="text" placeholder="YY">
<input data-checkout="cvv" type="text" placeholder="CVV">
<input type="submit" value="Pay Now">
</form>
</div>

[HttpPost]
public ActionResult Charge(string cardToken)
{
APIClient CheckoutClient = new APIClient("sk_test_bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", Environment.Sandbox);

CardTokenCharge cardTokenChargeModel = TestHelper.GetCardTokenChargeCreateModel(cardToken, TestHelper.RandomData.Email);

HttpResponse<Charge> response = CheckoutClient.ChargeService.ChargeWithCardToken(cardTokenChargeModel);

return Json(cardToken);
}

最佳答案

我已经检查了这个过程,它似乎工作正常,但有几件事我想和你确认一下。

请确保您遵循以下步骤:

1- 您的脚本依赖于 JQuery,因此您需要确保您的 html 页面中有以下行,以便您的 Ajax 请求可以工作:

2- 当您填写所需的卡信息并单击“立即付款”按钮时,CheckoutKit.js 将首先连接到沙箱为您生成一个卡 token ,例如card_tok_C739732A...

您能否检查一下您是否在浏览器控制台中收到了成功的响应。

3- 获得卡 token 后,您的脚本将发布一个 Ajax 调用以对您定义为操作方法的收费端点进行发送。

你能检查一下你的操作中的 cardToken 参数是否填充了一个值吗?

4- 您能否调试您的代码以检查您是否收到以下调用的任何响应,因为它会返回一个响应(有 60 秒超时):

HttpResponse 响应 = CheckoutClient.ChargeService.ChargeWithCardToken(cardTokenChargeModel);

让我们看看您会有什么 react ,以便我们可以对此进行更多调查。我很乐意就此问题为您提供帮助。

谢谢

关于c# - 使用 token 结账,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33099081/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com