Я создаю приложение в React. Я пытаюсь использовать выборку с сообщением на другой порт localhost. Я получил запрос на сервер, но мое тело пусто. Почему мое тело пусто? Я не понимаю

Мой простой сервер держится на node.js:

export default function Sending() {
    async function handleSubmit(e) {
          e.preventDefault()
          try{
              let result = await fetch('http://localhost:5000',{
                method: 'post',
                mode: 'no-cors',
                headers: {
                  'Accept': 'application/json',
                  'Content-type': 'application/json',
                },
                body: JSON.stringify({ email: 'example@gmail.com' })
              })
    
              console.log(result)
          } catch (error){
            console.log(error)
          }
    }
 return (
    <>
      Have a Form here
    </>
  )
}

Консольный журнал браузера:

Response {type: "opaque", url: "", redirected: false, status: 0, ok: false, …}
  body: null 
  bodyUsed: false 
  headers: 
  Headers {} 
  ok: false
  redirected: false 
  status: 0 
  statusText: "" 
  type: "opaque" 
  url: ""
  __proto__: Response

Мой простой сервер держится на node.js:

const express = require('express')
const bodyParser = require('body-parser')
const app = express()
const port = process.env.PORT || 5000

app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

app.post('/', (req, res) => {
  console.log(req.body)
  res.send("Hello")
})

app.get('/hello', (req, res) => {
  res.send("Hello, Benny")
})

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`)
})
-1
SuerTe_H 23 Ноя 2020 в 10:48

2 ответа

Подумайте об установке cors и добавьте его в свой код, как показано ниже.

const cors = require('cors')

app.use(cors())

Затем с помощью моргана

const morgan = require('morgan');

Подумайте о прочтении предыдущего аналогичного случая, как показано здесь Express JS получает пустой req.body от ReactJS < / а>

2
PeteZionDev 23 Ноя 2020 в 08:11

С первого взгляда; вы отправляете строку с помощью stringify. Node bodyparser пытается разобрать файл json. Попробуйте удалить строку и просто отправить объект.

-1
LukaZ 23 Ноя 2020 в 08:14
64964363