Я пытаюсь получить токен карты через библиотеку Stripe. js, но получаю Uncaught IntegrationError - PullRequest
0 голосов
/ 14 января 2020

Ниже приведена вызывающая функция

        function getToken(data, TokenData) {
        var stripe = Stripe(data.StripeID), // Check
            c = {
                "number": data.Cardnum,
                "cvc": data.Cvv,
                "exp_month": data.Expiry.getMonth() + 1,
                "exp_year": data.Expiry.getFullYear(),
                "name": data.NameOnCard,
                "currency": data.CurrencyCulture
            };
        stripe.createToken(c, (status, result)=>{
            if (result.error) {
                alert(result.error.message);
            }
            else {
                data.stripToken = result.token;
                return TokenData(data);
            }
        });
    }

Ошибка, которую я получаю в консоли: Uncaught IntegrationError: Для создания токена необходимо указать элемент Stripe Element или действительный тип токена.

Я не уверен насчет объекта карты. Я использую полосу. js v3.

1 Ответ

0 голосов
/ 15 января 2020

При использовании Stripe. js v3 вы не передаете данные карты напрямую в функцию createToken.

Вместо этого вам необходимо передать экземпляр в элемент "card" (созданный из Элементы полосы): https://stripe.com/docs/js/tokens_sources/create_token?type=cardElement

Подробнее о настройке элементов полосы: https://stripe.com/docs/payments/accept-a-payment#set -up-stripe-elements

...