Friday 15 July 2011

node.js - What methodOverride mean in node-express-mongoose-demo repository? -



node.js - What methodOverride mean in node-express-mongoose-demo repository? -

i've looked @ next code:

app.use(methodoverride(function (req, res) { if (req.body && typeof req.body === 'object' && '_method' in req.body) { // in urlencoded post bodies , delete var method = req.body._method; delete req.body._method; homecoming method; } }));

in node-express-mongoose-demo repository , interested do? please explain me?

from official documentation :

method override lets utilize set , delete http methods. in case, app looks _method parameter post query, , if finds it, overrides post request 'delete', , removes parameter body. in practice, you'd utilize on client :

<form method="post" action="/resource" enctype="application/x-www-form-urlencoded"> <input type="hidden" name="_method" value="delete"> <button type="submit">delete resource</button> </form>

note hidden input _method trigger middleware's function.

step step :

if (req.body && typeof req.body === 'object' && '_method' in req.body) { //if have body, , contains _method field var method = req.body._method; // override post method value of _method field (eg:delete in our example) delete req.body._method; //remove field body, don't need anymore homecoming method; } //and our post request delete!

node.js mongodb mongoose

No comments:

Post a Comment