Jquery ajax 請求容易出現的問題http415,http400

1.首先是url,如果是外部JS中的ajax請求,那麼url是相對路徑。如果是JSP頁面中的請求,url是全路徑。需要用到request.getContextPath.

2.其次是type,get/post,這個很少出問題。

3.重要的是ContentType,設置發送請求的提交數據的方式,有text/html、application/json、還有mutiple等。不是所有的數據請求都可以隨便的。

4.再更重要的就是檢查好自己要傳輸的data數據了。

   4.1: 首先data數據類型要和後臺接收的類型相匹配,不然會報媒體格式不一致的Http 415錯誤

   4.2:其次是當你的表單數據傳輸時,如果後臺是用對象接收,那麼要判斷傳輸的內容(input select等)是否能正確的裝填到對象中。如果不能裝填,會報http 400,這個是很難找出來的問題的。

   4.3:再就是當你的表單要轉爲json數據傳輸時,可以先序列化爲json對象再傳輸,serializeArray();、如果想轉換成JSON字符串傳輸的話,則還需要使用JSON.stringify();


JSON.parse(jsonStr);  字符串轉對象

JSON.stringify(jsonObj);對象轉字符串


  4.4:再一個耳熟能詳的就是async屬性了。(默認的true是異步),false是同步。

  4.5:還有就是很多人容易搞混的,dataType,這個是指定的返回數據的類型,和你傳輸數據的類型半毛錢都沒有謝謝!  明明我http400錯誤,別人叫我把dataType改爲json,我日了狗的心都有了好嗎?!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章