Я иногда получаю эту ошибку, даже использую «План Блейза».

аюсь обработать платеж кредитной картой из моего приложения для Android, используя Firebase и Stripe. Я получил токен Stripe на своем клиенте и использую триггер базы данных в своей облачной функции Firebase, чтобы отследить, когда новый заказ размещен. Вот мой код функции.

const stripe = require('stripe')('sk_test_XXXXXXXXXXXXXXXXXXXXXXXX');

return admin.database()
    .ref()
    .child('orders')
    .child(userId)
    .child(orderId)
    .child('token')
    .once('value')
    .then(snapshot => {
        return snapshot.val();
    })
    .then(token => {

        const amount = order.amount;
        console.log('Amount:', amount);
        console.log('token:', token.id);

        const idempotency_key = orderId;
        const source = token.id;
        const currency = 'usd';
        const charge = {amount, currency, source};

        return stripe.charges.create(charge, { idempotency_key });
    })
    .then(charge => {
        console.log('Success:', charge);
        // If the result is successful, write it back to the database
        return event.data.adminRef.set(charge);
    }, error => {
        console.log('Error:', error);

        return;
    }
);

enter code here

Это вызывает следующую ошибку:

Ошибка: ошибка произошла с нашим подключением к Stripe в Error._Error (/user_code/node_modules/stripe/lib/Error.js:12:17) в Error.Constructor (/user_code/node_modules/stripe/lib/utils.js: 120: 13) в Error.Constructor (/user_code/node_modules/stripe/lib/utils.js:120:13) в ClientRequest. (/user_code/node_modules/stripe/lib/StripeResource.js:206:9) в emitOne (events.js: 96: 13) в ClientRequest.emit (events.js: 188: 7) в TLSSocket.socketErrorListener (_http_client.js : 309: 9) в emitOne (events.js: 96: 13) в TLSSocket.emit (events.js: 188: 7) в connectErrorNT (net.js: 1021: 8) в _combinedTickCallback (internal / process / next_tick.js) : 80: 11) at process._tickDomainCallback (internal / process / next_tick.js: 128: 9)

Я не могу найти документацию по этой ошибке. И я перепробовал все, что мог придумать. Все переменные содержат действительные данные.

Ответы на вопрос(1)

Решение Вопроса

о с вашим кодом - это связано сПлан Firebase вы подписаны на

«План Spark», который является полностью бесплатным уровнем (и с которого большинство людей начинают), не разрешает исходящие сетевые подключения, за исключением услуг Google HTTPS.

Даже для разработки и тестирования, я предлагаю пойти по плану Blaze. Это позволяет для сетевых подключений. Хотя в нем указаны цены на использование (как для обработки, так и для сетевых подключений), кнопка «Информация» указывает на наличиебесплатный уровень использования каждый месяц до того, как эти цены вступят в силу, и этого уровня, как правило, достаточно для разработки и тестирования.

 Patrick Keogh27 сент. 2017 г., 19:30
Случайно ли вы знаете, как получить неудавшийся запрос на оплату? Все работает с вышеуказанным кодом, пока я не использую хорошую карту. Если я использую отклоненную карту, поток переходит в нижнюю часть ошибки, но переменная ошибки пуста. Я бы подумал, что он просто вернет неисправный объект заряда
 JIE WANG23 февр. 2019 г., 20:01
Я иногда получаю эту ошибку, даже использую «План Блейза».
 Patrick Keogh27 сент. 2017 г., 15:00
Это сделал, большое спасибо
 Prisoner27 сент. 2017 г., 19:39
Я ничего не знаю о самой Stripe, извини. {: Звучит так, будто вас лучше всего разместить, разместив этот отдельный целевой вопрос.
 Patrick Keogh27 сент. 2017 г., 20:37
Я получил спасибо

Ваш ответ на вопрос