1

フォーム認証を使用する公開 MVC3 サイトがあります。フォーム認証を使用して、ユーザーが承認されていない場合、ログイン ページにリダイレクトを送信します。私はこの動作を望んでおらず、代わりにサーバーが 401 無許可で応答することを望んでいます。これを達成する簡単な方法はありますか?

4

1 に答える 1

3

このようなことを意味しますか?

public class 401AuthorizeAttribute : AuthorizeAttribute
{
    private class Http401Result : ActionResult
    {
        public override void ExecuteResult(ControllerContext context)
        {
            // Set the response code to 401.
            context.HttpContext.Response.StatusCode = 401;
            context.HttpContext.Response.End();
        }
    }

    protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
    {
        filterContext.Result = new Http401Result();
    }
}

の代わりにこの属性を使用する必要があります[Authorize]

于 2012-06-07T18:15:21.270 に答える