IT박스

HttpClient로 본문 요청 작성

itboxs 2021. 1. 6. 07:56
반응형

HttpClient로 본문 요청 작성


XML content-type으로 요청 본문을 작성하고 싶지만 HttpClient Object ( http://hc.apache.org/httpclient-3.x/apidocs/index.html )를 사용 하는 방법을 모르겠습니다 .

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpRequest = new HttpPost(this.url);
httpRequest.setHeader("Content-Type", "application/xml");

그리고 XML로 본문을 계속 작성하는 방법을 모르겠습니다.


XML이 작성된 경우 이런 식으로 java.lang.String사용할 수 있습니다.HttpClient

    public void post() throws Exception{
        HttpClient client = new DefaultHttpClient();
        HttpPost post = new HttpPost("http://www.baidu.com");
        String xml = "<xml>xxxx</xml>";
        HttpEntity entity = new ByteArrayEntity(xml.getBytes("UTF-8"));
        post.setEntity(entity);
        HttpResponse response = client.execute(post);
        String result = EntityUtils.toString(response.getEntity());
    }

예외 사항에주의하십시오.

BTW, 예제는 httpclient 버전 4.x로 작성되었습니다.


코드 확장 (전송하려는 XML이에 있다고 가정 xmlString) :

String xmlString = "</xml>";
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpRequest = new HttpPost(this.url);
httpRequest.setHeader("Content-Type", "application/xml");
StringEntity xmlEntity = new StringEntity(xmlString);
httpRequest.setEntity(xmlEntity );
HttpResponse httpresponse = httpclient.execute(httppost);

참조 URL : https://stackoverflow.com/questions/18188041/write-in-body-request-with-httpclient

반응형