强制将表单身份验证重定向为GET请求
问题描述:
我在IIS/MVC中使用了表单身份验证。强制将表单身份验证重定向为GET请求
<authentication mode="Forms">
<forms loginUrl="~/Login" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
我正在发出HTTP PUT webapi请求,并且因为我的cookie过期而超时。该用户非常正确地被重定向到http://Login,但对登录网址的请求是PUT而不是GET。
,因为我的控制器仅支持得到这个结果在404
有没有办法来强制重定向到登录网址永远是一个GET不管原请求的类型。
答
当重定向到Login操作方法时,默认情况下,即使前一个请求是PUT/GET/POST/DELETE,类型也是PUT。试过了你的场景。用POST装饰了一个动作,然后重定向到类型为GET的登录。你可以检查你是否错过了其他的东西。
您的意思是类型是GET,即使前一个请求是其他请求之一?否则你的答案自相矛盾。 –
yes.previous请求是POST。 –