2012-07-18 5 views
5

Ich versuche, diese Reihe zu werfen von Global Application_Error ASAXWurf http Ausnahme (Unauthorized) von Application_Error

throw new HttpException((int)HttpStatusCode.Unauthorized, "Forbidden"); 

Aber aus irgendeinem Grund erhalte ich 200 und nicht 401 im Browser, wissen Sie, warum?

Update:

protected void Application_Error(object sender, EventArgs e) 
{   
    throw new HttpException((int)HttpStatusCode.Unauthorized, "Forbidden"); 
} 
+1

Haben Sie Formulare auth. in web.config aktiviert? Wenn Sie die Formularauthentifizierung in web.config aktiviert haben, kann dieses Verhalten auftreten. – VJAI

+0

@Mark, Danke, aber nein, ich nicht. – Shazam

+1

PLZ posten Sie Ihre Application_Error – VJAI

Antwort

1

Dieser Code kann Ihnen helfen

protected void Application_Error(object sender, EventArgs e) 
{ 
    Response.StatusCode = (int)HttpStatusCode.Unauthorized; 
    Server.ClearError(); 
} 

Anstatt jedoch den Statuscode in Global.asax der Einstellung, sollten Sie die Authentifizierung und Autorisierung in web.config gelten

Verwandte Themen