是否可以从当前请求(HttpRequest)中获取 HTTP 状态代码?我正在使用代码 301 将一个页面重定向到另一个页面。但是当我在重定向页面上时,该页面的响应状态代码为 200。在浏览器中,我可以看到正确的代码 (301)。
问问题
4234 次
2 回答
10
将页面重定向到另一个页面时(无论您重定向的状态是301还是302状态),都有 2 个请求:
- 响应状态为301(或302 )的第一个请求,带有新位置
- 第二个请求,其响应状态将为200(假设一切正常)以及重定向页面的内容。
当您检查Response.StatusCode
重定向页面时,它将是301,但在重定向页面上它永远不会是301(除非您在第一个重定向之后进行另一个重定向)。
要从当前请求的响应中获取 HTTP 状态代码,请使用:
HttpContext.Current.Response.Status // to get the string like '200 OK'
HttpContext.Current.Response.StatusCode // to get only the int value, e.g. 200
于 2013-08-14T17:08:11.453 回答
3
简单地查看状态码:
HttpContext.Current.Response.StatusCode
于 2013-08-14T17:04:52.007 回答