Tengo una aplicación Vue en la interfaz y un servidor expreso separado con solo unas pocas rutas. En app.js, registré mis rutas de la siguiente manera:
const express = require('express') const cors = require('cors') require('dotenv').config() const orders = require('./routes/orders') const webhooks = require('./routes/webhooks') const app = express() // http://expressjs.com/en/4x/api.html#express.urlencoded app.use(cors()) app.use(express.json()) app.use(express.urlencoded({ extended: true })) // Register api routes app.use('/', orders) app.use('/create-payment-intent', orders) app.use('/admin', orders) app.use('/admin/:id', orders) app.use('/webhook', webhooks) /* TODO - fall through route handler */En /rutas/pedidos.js
const express = require('express') const router = express.Router() const { flattenObject, orderValidationRules, validate } = require('../middlewares/validations') const OrdersController = require('../controllers/ordersController') router.route('/').post( orderValidationRules(), validate, OrdersController.apiPostOrder ) router.route('/admin').get(OrdersController.apiGetOrders) router.route('/create-payment-intent').post(OrdersController.apiCreatePaymentIntent) router.route('/:id').delete(OrdersController.apiDeleteOrder) module.exports = router/rutas/webhooks
const express = require('express') const router = express.Router() const WebhooksController = require('../controllers/webhooksController') router.route('/webhook').post(express.raw({type: 'application/json'}), WebhooksController.apiPostWebhookEvent) module.exports = routerEn la interfaz, puedo publicar mis pedidos, presionar la ruta de administración, se alcanza la ruta de creación de intención de pago en el servidor y responde 200, sin embargo, cuando veo si se alcanzó el webhook en el tablero de stripe, dice pendiente y en el servidor 404 extraviado:
[![ingrese la descripción de la imagen aquí][1]][1]
Este es un problema de enrutamiento expreso y no estoy seguro si de hecho configuré mis rutas correctamente. ¿Cómo puedo solucionar esto? También en el puerto localhost para el servidor que obtengo no puedo obtener /create-payment-intent y para /webhook, /admin está bien. [1]: https://i.stack.imgur.com/qoojq.png