재우니의 블로그

 

asp.net mvc 의 controller 에 put, delete 와 같은 header 를 받고자 할 때 iis 의 처리기매핑에서 "runAllManagedModulesForAllRequests" 의 동사인 verb 을 수정해야 합니다. web api 시에도 동일합니다.

http://stackoverflow.com/questions/11155528/asp-net-handle-put-delete-verbs

아래는 web.config 를 통해 처리기매핑 부분을 핸들링 할 수 있습니다.

 

<system.webServer> 
    <modules runAllManagedModulesForAllRequests="false"/> 
    <handlers> 
        <remove name="ExtensionlessUrl-Integrated-4.0" /> 
        <add name="ExtensionlessUrl-Integrated-4.0" path="*." 
            verb="GET,HEAD,POST,DEBUG,DELETE,PUT" 
            type="System.Web.Handlers.TransferRequestHandler" 
            preCondition="integratedMode,runtimeVersionv4.0"> 
    </handlers> 
</system.webServer> 

Iis 에서 직접 처리기 매핑 부분에서 직접 수정도 가능합니다.