gpt4 book ai didi

javascript - 为什么表单主体在 PUT 请求上返回 null?

转载 作者:行者123 更新时间:2023-12-02 22:02:28 31 4
gpt4 key购买 nike

为什么表单数据没有存储在req.body中?

EJS/HTML

<form onsubmit="EditJob()" class="editForm">
<div class="form-group-edit">
<label for="position">Position</label>
<input type="position" id="position" name="position" class="form-control" placeholder="Enter Position Title"
/>
</div>
<div class="form-group-edit">
<label for="company">Company</label>
<input type="company" id="company" name="company" class="form-control" placeholder="Enter Company Name"
/>
</div>

<button type="submit" class="edit">
<i class="fas fa-plus"></i>
</button>
</form>

客户端JS

const EditJob = () => {
const id = ####;
const url = `http://localhost:5000/dashboard/${id}`;
axios.put(url).then(res => {
console.log(res);
});
};

服务器端 JS

router.put("/:id", (req, res) => {
Job.findByIdAndUpdate(req.params.id, {
position: req.body.position,
company: req.body.company,
status: req.body.status
})
...
...
});

我的数据库中的更新文档导致 {position: null, company: null, status: null}..

最佳答案

确保您使用body-parser,或设置您的快速中间件,如下面的代码:

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

⚠️ 当您使用 axios.put() 时,请确保在其中传递 data。您可以阅读文档here

示例:Axios Put

axios.put(endPoint, data, config).then(...).catch(...)

希望对你有帮助。

关于javascript - 为什么表单主体在 PUT 请求上返回 null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59831844/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com