가짜 URL을 실행하면 http://localhost:1166/urldoesnotexist, HttpModule 내에서 response.StatusCode가 200 (OK)으로 표시됩니다. 나는 그것이 404 (Not Found)를 돌려 주길 기대하고 있었다. 응답이 브라우저에 전달 된 후 그러나HttpModule에서 잘못된 HttpStatus 코드가 반환되었습니다.
public class HttpPeformanceMonitorModule : IHttpModule
{
public void Init(HttpApplication context)
{
context.EndRequest += (sender, e) => TraceRequestEnd(sender, "PageLifeCycleTimer", "Begin - End Request");
}
private void TraceRequestEnd(object sender, string timerKey, string title)
{
HttpContext httpContext = ((HttpApplication)sender).Context;
if (response.StatusCode == 200) //for "http://localhost:1166/urldoesnotexist" I get Status Code 200!!!!
{
//do stuff...
}
}
}
아래의 코드를 참조하십시오, 나는 페이지에 표시되는 최종 결과를 찾을 수 없습니다 404 페이지입니다. - 어느 쪽이 맞습니까
누구든지 제게 왜 response.StatusCode가 가짜 URL을 200으로 반환하는지 설명해 주시겠습니까?
내가 멀리 있었을 때 죄송합니다 답장하는 동안 나를 데려갔습니다. Fiddler가 나에게 HTTP/1.1 404를 찾을 수 없음을 보여줍니다. 내 질문에 왜 HTTP 모듈 응답 코드가 잘못된 URL에 대해 200 준다? – Spock