Отправить данные из формы React JS в Back Express

Я создал реагирующее, экспресс-приложение, а затем создал простую форму в приложении React, которая принимает имя и возраст, и при отправке данные формы должны передаваться в бэкэнд-экспресс-приложение и консольный журнал, но я не могу получить доступ к входным данным формы в моем бэкэнд экспресс. При отправке я получаю это {"сообщение": "Hello World"}, зарегистрированное в моей консоли страницы реагирования.

//express app.js

const express = require('express');
const cors = require('cors');


const app = express()
app.use(cors())
app.use(express.urlencoded())

app.use(express.json())

app.use("/",(req,res)=>{
    res.json({ message: "Hello World" });
    
})



app.post('/', (req, res) => {
    const { fullname, age } = req.body;
    console.info(fullname, age);
    res.send('Form submitted successfully');
  });

app.listen(5000,()=>{console.info("http://localhost:5000");})

Мое приложение для входа в систему:

import React from "react";

export default function App(){

  function submitHandler(e){
    e.preventDefault();
    const fullname = e.target.elements.fullname.value;
    const age = e.target.elements.age.value;
    fetch('http://localhost:5000/', {
        method: 'POST',
        headers: { 'Content-Type': 'application/json' },
        body: JSON.stringify({ fullname, age })
    })
    .then(response => response.text())
    .then(data => {
        console.info(data);
    });
}
  return (
    <div className = "App">
      <form onSubmit = {submitHandler}>
        <input type = "text" name = "fullname" id = "" placeholder = "Name:" />
        <input type = "number" name = "age" id = "" placeholder = "age" />
        <input type = "submit" value = "Submit" />
      </form>
    </div>
  );

}

Помогите мне получить данные ввода формы в экспресс-приложении, чтобы я мог позже сохранить их в mongodb

🤔 А знаете ли вы, что...
С JavaScript можно создавать интерактивные формы и проверять введенные пользователем данные.


71
1

Ответ:

Решено

Вы должны заменить app.use на app.get

app.get("/",(req,res)=>{
    res.json({ message: "Hello World" });
})

см. документацию app.use