【发布时间】:2012-08-20 04:37:29
【问题描述】:
我们在前端使用 OpenWeb js 库,当发生某些类型的错误时,它们需要 .NET 中间层向它们发送特定的 HTTP 标头状态代码。我试图通过这样做来实现这一点:
public ActionResult TestError(string id) // id = error code
{
Request.Headers.Add("Status Code", id);
Response.AddHeader("Status Code", id);
var error = new Error();
error.ErrorID = 123;
error.Level = 2;
error.Message = "You broke the Internet!";
return Json(error, JsonRequestBehavior.AllowGet);
}
它有点成功了。看截图: http status code http://zerogravpro.com/temp/pic.png
请注意,我在响应标头中实现了 400 的状态代码,但我确实需要请求标头中的 400。相反,我得到“200 OK”。我怎样才能做到这一点?
我的调用 URL 结构很简单:/Main/TestError/400
【问题讨论】:
-
我相信他真正想要的是在响应状态行(被圈出)中设置状态码,而不是请求头。
-
请求没有状态码,就算你能做到,修改Request头信息又有什么意义,你已经收到了?
标签: c# .net asp.net-mvc-3