2
我想在客戶端使用jQuery處理所有服務器端錯誤。爲了這個目的,像這樣我的MVC3應用程序中創建axception處理attrbute:如何使用ASP.NET MVC3拋出ajax錯誤
public class JsonErrorHandlerAttribute : HandleErrorAttribute
{
public override void OnException(ExceptionContext filterContext)
{
filterContext.ExceptionHandled = true;
JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
string result = jsSerializer.Serialize(new { error = filterContext.Exception.Message });
filterContext.HttpContext.Response.Write(result);
}
}
但是這種方法只是返回200 OK結果正常JSON響應。 A不想在客戶端解析它,以確定它是否有錯誤。所以我的問題是拋出ajax錯誤的最佳方式是什麼?
一定要使用正確的代碼 - 使用500作爲毯子「發生了不好的事情」返回是不好的做法。以下是狀態代碼列表:http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html在正確的情況下選擇合適的代碼非常重要。 – Fourth 2012-03-06 04:54:53
簡單又幹淨 - 謝謝! – koss 2012-03-06 05:14:01
@Fourth:Thx,你說的對,應該考慮!但要保持簡單,我認爲500就沒問題。 – Marc 2012-03-06 05:52:31