我正在嘗試爲我們正在構建的網頁實現一些客戶端記錄。這個想法是針對客戶端的一些特定的錯誤事件,當服務器端沒有返回一些關鍵信息(頁面上的信息是從多個服務聚合的)時會發生這些事件。如何從MVC控制器方法中的HTTP Post方法提取數據?
在我的客戶端的JavaScript,我有:
$.ajax({
url: 'MyURL',
type: 'POST',
data: 'MyErrorMessage',
});
而我的服務器端控制器上,我想有:
@RequestMapping(value = "MyURL", method = RequestMethod.POST)
protected ModelAndView logErrorMessages(String errorMessage)
{
/* Log the error message using the server side logging framework */
}
現在,我不完全知道如何訪問控制器中的錯誤消息字符串。我嘗試了上面的方法,String是'null'。我考慮的另一種方法是將錯誤消息字符串作爲@RequestParam
放入請求URL中,如此處所定義的:here。 但是我對此做了些微小的調整,因爲我覺得消息不應該是URL參數的一部分。我確信我錯過了一些非常明顯的東西(比如創建一個錯誤消息對象作爲'模型'的一部分或類似的東西),但我的問題是我是MVC和Web開發領域的新手,並沒有看過在模型/視圖代碼中,只有'控制器'代碼。任何可以讓我走上正確軌道的提示非常感謝。