JavaWeb 返回json數據的兩種方式
CreationTime--2018年7月25日17點20分
Author:Marydon
1.說明
由於一般情況下,由瀏覽器(前端)發送請求,服務器(后台)響應json數據,所以這里結合js進行說明;
A服務器發送請求至B服務器,並接收其返回的json數據,見文末推薦,這里不再贅述!
2.服務器返回json數據
方式一:返回JSON格式數據(JSON對象)
// 設置返回json數據並指定字符集 response.setContentType("application/json;charset=utf-8;"); // 設置返回數據 JSONObject jo = new JSONObject(); jo.put("name", "Marydon"); // 返回數據 response.getWriter().print(jo);
方式二:返回JSON格式字符串(JSON字符串)
// 設置返回字符集 response.setContentType("charset=utf-8"); String result = "{\"name\":\"Marydon\"}"; // 返回數據 response.getWriter().print(result);
3.客戶端接收並處理json數據
對於第一種返回格式
$.get();$.ajax();$.post();$.getJSON()這4種方式不用再做多余的處理,直接就能取值。
$.post(baseUrl + "/test.do",function(result){ alert(result.name);// Marydon });
對於第二種返回格式
$.get();$.ajax();$.post();這三種方式需要對數據進行處理,才能取值;
$.get(baseUrl + "/test.do",function(result){ // json字符串-->json對象 result = eval('(' + result + ')'); alert(result.name);// Marydon });
$.getJSON();這種方式直接就能取值,無需再做處理。
$.getJSON(baseUrl + "/test.do",function(result){ alert(result.name);// Marydon });