用于拒绝HTTP谓词的MVC3 Custom属性

时间:2017-11-10 13:29:53

标签: c# asp.net asp.net-mvc asp.net-mvc-4 asp.net-mvc-3

在Asp.net Web应用程序中,我们可以使用web.config文件中的下面一行代码来拒绝HttpVerbs,但MVC使用动作控制器进行路由,并使用授权属性进行授权。

所以我们想创建自定义属性来处理这个问题。

如何创建自定义属性以在所有操作方法上默认拒绝某些HTTP谓词,并且仅允许HTTPGet和HTTPPost。

<deny verbs="*" users="*" /> 

1 个答案:

答案 0 :(得分:4)

如果您想禁止除 GET和POST之外的所有动词,您可以在web.config文件中执行以下操作。

function playPause(audio){
    var sound=document.getElementById(audio);
    if (sound.paused){
        sound.play();
    } else {
        sound.pause();
        sound.currentTime=0;
    }
}

示例代码和其他阅读here

通过将其置于web.config中,您可以“短路”.NET管道并允许IIS选择是否应该响应请求(这对您的应用程序更有效)。