2009-11-19 8 views
18

Sto provando a passare il DELETE a un URL in asp.net MVC utilizzando JavaScript ma comunque ho sempre ottenuto il ritorno 405 Method not allow.ASP.NET MVC ha ottenuto l'errore 405 sulla richiesta DELETE HTTP?

c'è comunque per farlo funzionare?

A proposito: ho inserito l'attributo [AcceptVerb(HttpVerb.Delete)] sul mio controller.

DELETE /post/delete/8 

questa è la richiesta

+0

u può mostrarci alcuni dati richiesta via Fiddler o Firebug, in modo che possiamo raddoppiare confermare ciò che sta ottenendo * richiesto *? –

+0

ho aggiunto la richiesta tramite Firebug, quella è la richiesta, e nessun dato dal momento che sto ancora testando ... – DucDigital

risposta

41

Anche a me è stato frustrante. È perché WebDAVModule viene installato per impostazione predefinita su IIS 7.5. Rimuovendo il modulo, puoi liberarti di questa restrizione frustrante. Semplicemente,

<system.webServer> 
    <validation validateIntegratedModeConfiguration="false"/> 
    <modules runAllManagedModulesForAllRequests="true"> 
      <remove name="WebDAVModule"/> <- add this 

da http://shouldersofgiants.co.uk/Blog/post/2009/11/27/HTTP-Error-405-With-ASPNet-MVC-and-HTTP-PUT-on-IIS-75.aspx

+0

Eccellente, anche questo mi ha aiutato. Potrebbe essere solo una cosa MVC.NET 3, perché non ricordo che accada in MVC.NET 2. – Dofs

+1

Anche le richieste per PUT! Grazie! –

+1

FANTASTICO !!!!! Funzionava perfettamente per il nostro problema PUT =) ... così contento che tu abbia postato questo! – afreeland

0

Si dovrebbe controllare il web.config (se si utilizza IIS7, altrimenti il ​​manager di IIS per IIS6 e sotto) per assicurarsi che il verbo DELETE è mappata al gestore di richiesta di MCV.

+0

-> intendi questo? – DucDigital

Problemi correlati