我們有一個處理數據庫請求的C#AJAX服務器,我們希望在異常時返回一個400/403/500狀態碼,以便我們可以瞭解發生在客戶端。但是,我們回覆的內容是響應正文中的「錯誤請求」。如何使用C#/ ASP.Net返回responseText中的錯誤
例如,如果駕駛員ADO.Net返回該消息:傳遞給LEFT或SUBSTRING函數
無效長度參數。 無法將值NULL插入'--COLUMN--'列中,表 '--DATABASE.SCHEMA.TABLE--';列不允許有空值。 INSERT 失敗。該語句已終止。
然後我們的AJAX服務器直接返回這樣的文字:
壞請求
我已經看過在Chrome充分響應頭並沒有什麼甚至遠程類似於此錯誤消息那裏。這是我們用來發送錯誤返回的代碼:
catch (Exception ex)
{
//Response.TrySkipIisCustomErrors = true;
Response.StatusCode = (int)HttpStatusCode.SC_BAD_REQUEST;
Response.Write(ex.Message);
Response.Flush();
}
在Java/JSP相當於這臺服務器,我們正在使用此代碼正確的行爲:
} catch (Exception e) {
response.sendError(response.SC_BAD_REQUEST, e.getClass() + " : " + e.getMessage());
}
將此添加到web.config中有訣竅 - 非常感謝! ' ' –
Graham