以前做asp.net .nvc項目,前後臺交互時,後臺返回值通常都會定義爲類似下面這樣的結構
result{
code:0,
Data:{}
}
使用code的值來判斷是否執行成功。
最近做新項目的時候,同事建議,使用HTTPStatus來判斷是否執行成功。例如,返回401,則表示沒有登陸。返回501,則表示執行失敗。
本地調試一切正常,但是放在服務器上,出問題了。IIS把所有的非200的返回值都攔截了。所有的額外信息都無法傳到前臺。查了好半天,才最終解決。
解決方案如下
後臺返回時,使用如下方式
Response.StatusCode = 501;
Response.TrySkipIisCustomErrors = true;