2012. 7. 17. 19:41 IT



httpclient 를 쓰는데 POST 로 requestbody 에 데이터 전송하는 방법을 잊지않기 위해 기록함. 



import org.apache.http.*;

import org.apache.http.client.methods.*;

import org.apache.http.entity.*;

import org.apache.http.impl.client.*;

import org.apache.http.message.*;


// json string 전달을 위해 Builder를 사용. 

JsonBuilder builder = new groovy.json.JsonBuilder();

// make json object // 주의사항. 변수명을 json key 값과 같게 주면 문제가 생길 수 있음... 

builder {

id  myid

name myname

}


HttpPost method = new HttpPost("${RestUrl}/resources");

StringEntity requestEntity = new StringEntity(builder.toString() , "utf-8");

requestEntity.setContentType(new BasicHeader("Content-Type", "application/json"));

method.setEntity(requestEntity);


// header setting... 


HttpResponse response = httpclient.execute(method);

if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {

   // do something...

}

posted by smplnote