JQuery의 Ajax통신을 하면 하기와 같이 보낸다.
$.ajax({
type:"POST",
url:'http://localhost:8180/GisProject/MainService',
data:{mydata:JSON.stringify(params)},
datatype:"json",
success:function(msg){
console.log(msg);},
error:function(xhr,status){
console.log(status);},});
이 경우 Spring 의 기본 Parameter로는 받을 방법이 없다.. 왜 냐면. Requert.payload 형식으로 넘어 가기 때문에..
이를 받기 위해선 하기와 같은 처리가 필요 하다..
// Request playload Data 가져오기.
BufferedReader bfr= req.getReader(); // getReader를 통해서 읽어 올 수 있다.
StringBuffer sbPayLoad = new StringBuffer();
String sCurrentLine;
while (( sCurrentLine = bfr.readLine()) != null) {
sbPayLoad.append( sCurrentLine );
}
읽어온 객체 ( 대부분 JSON ) 은 하기와 같이 파싱해서 사용한다.
// json parsering
JSONObject jsonObjectMain = JSONObject.fromObject( sbPayLoad.toString() );
String page = jsonObjectMain.getString( “page” );
String code = jsonObjectMain.getString( “code” );
JSONObject jsonObjectReq =jsonObjectMain.getJSONObject(“requestData”);
String lo_code = jsonObjectReq.getString( “lo_code” );
String sector = jsonObjectReq.getString( “sector” );
이것 때문에 2시간 넘개 헤맸다. ㅠㅠ
이상.