Express route в firebase отвечает на ошибку 500 для почтового запроса с телом JSON - PullRequest
0 голосов
/ 05 мая 2020

Я пытался создать проект реакции с 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",
 };
...