Fw: [問題] 明明有進入程式裡的方法,頁面卻跳出404

作者: lueichun (no anonymous)   2020-07-27 22:25:37
※狀況概述:
就是我透過spring和JQuery ajax,寫了一個簡單的動態下拉式選單的程式,
我在瀏覽器上輸入url,在debugger模式下可以看到執行緒停留在中斷點的位置,
但是瀏覽器卻顯示404,而我在程式裡撈的資料也沒有回到前端,也就是
前端的回呼函數沒有接到撈出來的資料。
※程式碼:
前端:
$(document).ready(function(){
$("#dropdown1").change(function() {
//alert("ajax");
$.ajax({
type :"GET",
url :
"/TestSpringJQueryAjax1/goToTestController.do?method=queryCountry",
data : {
continentId : $("#dropdown1").val(),
},
dataType: "json",
mmsuccess : function(data) {
//alert(data.list[0].countryId);
//var i = 0;
$("#dropdown2 option").remove();
data.list.forEach(function(value,index){
$("#dropdown2").append(new Option(data.list[index].countryName,
data.list[index].countryId));
//i++;
});
},
error:function(data){
alert(data);//進入這裡,並顯示404
}
})
})
});
後端:
@ResponseBody
public String queryCountry(HttpServletRequest request, HttpServletResponse
response) {
String continentId = request.getParameter("continentId");
List<Country> list = testDao.queryCountry(continentId);
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap.put("list", list);
Gson gson = new Gson();
String result = gson.toJson(resultMap);
return result;
}
※錯誤訊息:
後端沒跳任何錯誤訊息,只有前端顯示:
http://localhost:8080/TestSpringJQueryAjax1/goToTestController.do
?method=queryCountry&continentId=2 404 (Not Found)
作者: vi000246 (Vi)   2020-07-28 13:24:00
看起來是你request的body並沒有附上去後端接不到body 就不認為你的request是有效url你可以用fiddler看你的body到底附到哪裡去了而且你是用get 卻用body傳參數 接不到是正常的建議你把get跟post搞懂 還有api的route機制也看一下

Links booklink

Contact Us: admin [ a t ] ucptt.com