簡體   English   中英

put 在 express js 中不起作用

[英]put is not working in express js

我有 POST 和 PUT 指的是同一個 FORM。 當我點擊提交按鈕時,只有 POST 請求正在被處理(因為 POST 和 PUT 都有相同的路由名稱,這是 FORM 的一個動作),我該如何實現 PUT ?

//App.js

app.post('/addClassified',routes().saveClassified);  -- POST
app.put('/addClassified',routes().updateClassified); -- PUT

app.get('/newClassified',function(req,res){
    res.render('newClassifieds'); //Rendering form
});

// newClassifieds.pug

// Method and action of FORM

form(method='POST' action='/addClassified')
    button.btn.btn-primary(type='submit') Save

//routes.js 路由

// 保存分類 -- POST

functions.saveClassified = function (req, res) {
     console.log(req.body.category);
};

// PUT -- 更新分類

functions.updateClassified = function (req, res) {

};

您必須知道 HTML5 只允許在表單中使用 GET 和 POST,因此如果您必須實現 PUT 操作,您可以按照以下步驟操作:

如何實現 PUT? 1.-安裝“方法覆蓋”npm 包。 2.-你必須像這樣調用你的 app.js:

`var methodOverride = require("method-override");
app.use(methodOverride("_method"))`

3.-在您的操作表單中添加“_method=PUT”,如下所示:

form(method='POST' action='/addClassified/<%=thing._id%>?_method=PUT')

如果您需要其他任何東西,請告訴我

1)安裝方法覆蓋包npm install method-override require package in index.js \\code

var methodOverride = require("method-override"); app.use(methodOverride("_method")) app.put("/edit",function(req,res){});

\\add _method=put 形式為 like

 <form action="/edit/?_method=PUT" method="post" >

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM