【问题标题】:Error when trying to get Stripe Token尝试获取 Stripe Token 时出错
【发布时间】:2018-10-13 16:01:43
【问题描述】:

我希望有人可以提供帮助。我是条纹新手。我试图让人们订阅一个计划(比如 5 美元/月)。我已经使用仪表板配置了条带。还得到了我的可发布密钥。在客户端,我试图获取令牌以将其发送到后端,以便我可以创建订阅。

我看过一个旧示例(即 stripe.js V2),您可以在其中执行您在下面看到的操作并获取令牌:

     <script type="text/javascript" src="https://js.stripe.com/v2"></script>
 Stripe.setPublishableKey("MyPublishableKey");
 expiration = $('.cc-exp').payment('cardExpiryVal');
        Stripe.card.createToken({
            number: $('.cc-number').val(),
            cvc: $('.cc-cvc').val(),
            exp_month: (expiration.month || 0),
            exp_year: (expiration.year || 0)
        }, stripeResponseHandler);

现在我正在使用 Stripe.js V3,并且这样做:

    <script type="text/javascript" src="https://js.stripe.com/v3"></script>
var stripePublishableKey = @Html.Raw(Json.Encode(Model.StripePublishableKey));
    var stripe = Stripe(stripePublishableKey);
stripe.tokens.create({
                card: {
                    "number": '4242424242424242',
                    "exp_month": 12,
                    "exp_year": 2019,
                    "cvc": '123'
                }
            }, function(err, token) {
                // asynchronously called
            });

我很确定可发布密钥正在工作,因为当我进行试验时,我可以看到一些事件显示在 Stripe 仪表板上。

我遇到的问题是我在 chrome 控制台中收到以下错误:

未捕获的类型错误:无法读取未定义的属性“创建”

我认为this is 是正确的界面,但不是 100% 确定:

如果有人可以提供帮助,那就太好了。

谢谢。

贝达德。

【问题讨论】:

    标签: stripe-payments stripe.net stripe.js


    【解决方案1】:

    V3 (Elements) 无法从原始卡片详细信息创建令牌 - 您不应该这样做 has PCI consequences

    您可能希望在此处将卡字段切换为 Elements

    【讨论】:

    • 非常感谢您的回复。是的,我使用的是旧 API。基本上我需要做stripe.createToken,并传递一个卡片元素和tokendata给它,它有关于卡片的额外信息。要查看更多详细信息,请在链接的下一级列出full details。干杯。
    猜你喜欢
    • 2014-07-06
    • 1970-01-01
    • 2013-07-22
    • 2016-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-31
    • 2016-05-26
    相关资源
    最近更新 更多