亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

router.put 和 router.delete 的 PUT 和 GET 方法不起作用(快速)

router.put 和 router.delete 的 PUT 和 GET 方法不起作用(快速)

一只萌萌小番薯 2023-08-05 20:46:06
我正在構建一個 CRUD 應用程序。我陷入了更新和刪除操作,其他一切似乎都正常。所以我使用方法覆蓋來發送 PUT 和 GET 請求。這是相關代碼:app.jsconst methodOverride = require('method-override');app.use(methodOverride('_method'));這是我寫的更新和刪除內容。我正在使用 Mongodb 的 Monk 驅動程序。index.jsvar router = express.Router();router.put('/videos/:id', function(req, res){    var collection = db.get('videos');    var item = {        title: req.body.title,        genre: req.body.genre,        image: req.body.image,        description: req.body.desc    };    var id = req.params.id;    collection.update(    {_id: id}, {        $set: item    });    res.redirect('/videos');});router.delete('/videos/:id', function(req, res){    var collection = db.get('videos');    collection.remove({"_id" : req.params.id});    res.redirect('/videos');});對于刪除表格<form action="/videos/<%= video._id %>?_method=DELETE" method="POST"><button type="submit" class="btn btn-danger">Delete video</button></form>用于更新表格<form method="POST" action="/videos/<%= video._id %>?_method=PUT">    <input type="hidden" name="_method" value="PUT"></form>我搜索了很多地方,當我點擊提交按鈕時仍然出現網頁未找到(404)錯誤。我缺少什么?提交按鈕應該調用我在 中展示的兩個方法index.js。
查看完整描述

3 回答

?
梵蒂岡之花

TA貢獻1900條經驗 獲得超5個贊

我改變了router.put和。router.deleterouter.post



查看完整回答
反對 回復 2023-08-05
?
嗶嗶one

TA貢獻1854條經驗 獲得超8個贊

表格方式與快捷路線不匹配。

兩者的表單方法分別是POST。

但是,如果您查看快速路線,方法是 PUT 和 DELETE。

嘗試更改路線并再次測試是否有效。


查看完整回答
反對 回復 2023-08-05
?
胡說叔叔

TA貢獻1804條經驗 獲得超8個贊

檢查您是否導出了index.js 文件并將其導入到app.js 中,我認為它應該可以正常工作,但請嘗試重新啟動服務器并查看它是否有效。:)



查看完整回答
反對 回復 2023-08-05
  • 3 回答
  • 0 關注
  • 239 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號