任何人都可以告訴我我做錯了什麼。
我的HTML表單:
<form action="/user/:id" method="put">
<div class="form-group">
<label>Miles</label>
<input type="text" class="form-control" name="miles">
</div>
<button type="submit" class="btn btn-warning btn-lg">Login</button>
</form>
我快線:從我的HTML表單
app.put('/user/:id', function(req, res) {
User.findById(req.body.params.id, function(err, user) {
if (err)
res.send(err);
console.log(user.id);
User.findByIdAndUpdate(
user.id,
{$push: {"milesLog": {miles: req.body.miles}}},
{safe: true, upsert: true},
function(err, model) {
console.log(err);
},
res.json(user)
);
發帖我收到以下錯誤:
Cannot GET /user?miles=66&activity=asdasd
但是當我通過P來測試它OSTMAN它的工作原理:
我在做什麼錯。爲什麼它不能從我的HTML表單中工作?
謝謝你的回覆。基本上我有一個mongoDB模式中的對象數組。我希望能夠通過提交表單將對象推入數組中。這就是爲什麼我使用PUT。繼承人一點點背景http://stackoverflow.com/questions/28811905/how-to-put-an-object-in-an-array-in-mongodb-using-mongoose-on-form-submission你的幫助是非常讚賞。再次感謝你。 – Skywalker 2015-03-02 18:28:34
@ user2190986 - 我認爲大多數瀏覽器在技術上都會讓你做一個PUT請求,但它是無效的,表單唯一有效的方法是GET或POST,這就是你應該使用的,沒有理由使用PUT請求這裏。另外,正如答案中指出的那樣,路由似乎是錯誤的,並且與您使用的URL不匹配。 – adeneo 2015-03-02 18:50:35