Я пытался создать проект реакции с firebase в качестве бэкэнда (функции firebase + express). Я использую маршрут post , который, как ожидается, получит json как тело запроса и ответит статусом 200 после того, как данные будут вставлены в firestore. Я использую ax ios для отправьте почтовый запрос вместе с этим, rote отвечает с ошибкой 500 в почтальоне запросе и работает нормально с простой формой html.
код для маршрута (Express + функции firebase)
/*imports*/
const admin = require('firebase-admin');
const functions = require('firebase-functions');
const express = require('express');
var bodyParser = require('body-parser');
const cors = require('cors');
const jsonParser = bodyParser.json();
var app = express();
app.use(jsonParser);
/*route*/
app.post('/create',jsonParser,(request, response)=>{
(async ()=>{
try{
var data = {
fullName : request.body.name,
email : request.body.email
};
await db.collection('signup').doc("/"+request.body.email+"/").create(data);
return response.status(200).json(data);
}catch(error)
{
console.log(error);
console.log("name on body"+request.body.name);
return response.status(500).send("data"+request.body.name);
}
})();
});
и вот как я отправляю данные из внешнего интерфейса
await axios.post(API_BASE_URL+endpoint,body,config).then(function(response){
return response;
}).catch(function(error){
throw error;
});
следующее - это то, что я пытался опубликовать как тело
let data = {
fullName: "John Doe",
email: "john@examplemail.com",
};