Я впервые настраиваю вебхуки Stripe. Я сделал сотни тестовых запросов, и у меня был уровень ошибок около 90%. Невозможно предсказать, почему происходят сбои.
Ответы на сбой на панели управления Stripe:
Время ожидания подключения к удаленному хосту истекло
или же
Не удалось подключиться к удаленному хосту
Мой вебхук (я упростил его для тестирования). Примерно в 10% случаев я получаю ответ 200 с {получено: правда}
:
expressRouter.route('/hooks').post( async (req, res) => {
константное событие = req.body;
console.log("Событие:");
console.log(событие);
// Обработка события
переключатель (событие.тип) {
case 'payment_intent.succeeded':
const paymentIntent = event.data.object;
// Затем определите и вызовите метод для обработки успешного платежного намерения.
// обработатьPaymentIntentSucceeded(paymentIntent);
сломать;
case 'payment_method.attached':
константный метод оплаты = событие.данные.объект;
// Затем определите и вызовите метод для обработки успешного присоединения PaymentMethod.
// handlePaymentMethodAttached(paymentMethod);
сломать;
// ... обрабатывать другие типы событий
По умолчанию:
console.log(`Необработанный тип события ${event.type}`);
}
// Возвращаем ответ для подтверждения получения события
res.json ({получено: правда});
})
Я пробовал эти два способа определения хука, а также с асинхронностью и без нее:
expressRouter.route('/hooks').post( async (req, res) => {
...
})
// и
app.post("/hooks", async (req, res) => {
...
})
Я связался со службой поддержки Stripe и испробовал все их предложения.
Они оставили мне следующие возможности:
Возможно, задействована медленная сеть или какая-то другая проблема с маршрутизацией.
Хост-провайдеру может потребоваться также разрешить IP-адрес доставки Stripe, к вашему сведению.
они могут быть заблокированы до того, как достигнут вашего сервера
Я добавил IP-адреса Stripe в iptables, например:
iptables -I ВВОД -p tcp -s 3.18.12.63 -j ПРИНЯТЬ
Я использую свой VPS-сервер Hostinger с Caddy на Ubuntu 18.04. Может ли это быть проблемой с настройкой моего сервера? Любые советы высоко ценится.