2011-12-04 11 views
116

El Connect.js very terse documentation dice methodOverride¿Qué hace Connect.js methodOverride?

Proporciona soporte de imitación método HTTP.

¿Qué significa eso? El obvious Google search es menos que útil. ¿Por qué es útil methodOverride?

+3

Espera, esa no es la búsqueda obvia en Google. Eso sería "Connect.js methodoverride" o "Connect javascript methodoverride". No hay ninguna razón para pensar que el "faux HTTP" sea de alguna manera estándar. Alrededor del 3/2013 primer golpe es relacionado con Kim Kardashian. – djechlin

+1

¿Quizás la Sra. Kardashian tiene node-jistsu? :) –

+3

'Faux' significa 'falso', 'falso' o 'falso'. –

Respuesta

147
  • Si desea simular y DELETEPUT, methodOverride es para eso.
  • Si pasa en el parámetro de entrada _method establecido en 'eliminar' o 'poner', entonces se puede utilizar app.delete y app.put in exprés en lugar de utilizar app.post todo el tiempo (por lo tanto más descriptivo, detallado):

Backend:

// the app 
app.put('/users/:id', function (req, res, next) { 
    // edit your user here 
}); 

lógica Cliente:

// client side must be.. 
<form> ... 
    <input type="hidden" name="_method" value="put" /> 
</form> 
+5

Y la fuente debe ser [http://www.senchalabs.org/connect/methodOverride.html](http://www.senchalabs.org/connect/methodOverride.html) – ilyaigpetrov