Я создал реагирующее, экспресс-приложение, а затем создал простую форму в приложении 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 можно создавать интерактивные формы и проверять введенные пользователем данные.
Вы должны заменить app.use на app.get
app.get("/",(req,res)=>{
res.json({ message: "Hello World" });
})