Как вывести данные отправленные api через webhook
Сервер лежит на ngrok, который ссылается на localhost:8080
const express = require("express")
const bodyParser = require("body-parser")
const PORT = process.env.PORT || 8080
const app = express()
app.use(bodyParser.json())
// WEBHOOK
app.post("/hook", (req, res) => {
console.log(req.body)
res.status(200).end()
})
router.get("/hook", (req, res) => {
console.log(req.body)
res.json(req.body)
})
app.listen(PORT, () => {
console.log(`Server has been started on PORT ${PORT}`)
})
// CORS
const whitelist = ["http://localhost:3000"]
const corsOptions = {
origin: function (origin, callback) {
if (!origin || whitelist.indexOf(origin) !== -1) {
callback(null, true)
} else {
callback(new Error("Not allowed by CORS"))
}
},
credentials: true,
}
app.use(cors(corsOptions))
Данные выводятся в консоль vs code, как получать их на фронте через fetch запрос? Если делаю get запрос на адрес ngrok http://.../hook, то вылазит ошибка политики cors, get на localhost:8080/hook выдает 404
Правка:
Добавил get сразу после post:
router.get("/hook", (req, res) => {
console.log(req.body)
res.json(req.body)
})
Источник: Stack Overflow на русском