HttpClient 의 용법 소결

HttpClient 의 용법 소결
HttpClient 사용 절차:
  • 1. DefaultHttpClient 클래스 를 사용 하여 HttpClient 대상 을 예화 합 니 다
  • 2. HttpGet 또는 HttpPost 대상 을 만 들 고 요청 할 URL 을 구조 적 방법 으로 HttpGet 또는 HttpPost 대상 에 전송 합 니 다.
  • 3. execute 방법 으로 HTTP GET 또는 HTTP POST 요청 을 보 내 고 HttpResponse 대상 을 되 돌려 줍 니 다.
  • 4. HttpResponse 인터페이스의 getEntity 방법 으로 응답 정 보 를 되 돌려 주 고 얻 은 원본 데 이 터 를 처리 합 니 다.

  • Get 요청 을 예 로 들 면:
    package Test;
    
    import java.io.BufferedReader;
    import java.io.ByteArrayInputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    
    import javax.swing.text.Document;
    
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.xml.sax.InputSource;
    
    
    @SuppressWarnings("deprecation")
    public class MsgThread extends Thread {
    
        @Override
        public void run() {
    
            String url="http://121.40.137.165/OpenPlatform/OpenApi?action=sendOnce"
                    +"&"+"ac="
                    +"&"+"authkey="
                    +"&"+"cgid="
                    +"&"+"csid="
                    +"&"+"c="+java.net.URLEncoder.encode("        ")
                    +"&"+"m=";
            try {
    
                @SuppressWarnings({ "resource", "deprecation" })
                HttpClient httpclient = new DefaultHttpClient();//   HttpClient  
    
                HttpGet httpget = new HttpGet(url); //  get     HttpGet  
                HttpResponse response = httpclient.execute(httpget);  //   HttpGet  
    
                int a = response.getStatusLine().getStatusCode();
    
                byte[] msgBody = null;
    
                if (a == 200) {
                    HttpEntity entity = response.getEntity(); //           。        xml  ,       。
    
                    InputStream is = entity.getContent();
                    ;//       
    
                    byte[] temp = new byte[1024];
                    int n = 0;
                    ByteArrayOutputStream bos = new ByteArrayOutputStream();
                    while ((n = is.read(temp)) != -1) {
                        bos.write(temp, 0, n);
                    }
                    msgBody = bos.toByteArray();
                    bos.close();
                    is.close();
                    String returnXml = new String(msgBody, "UTF-8").trim();
    
                    System.out.println("    xml   :"+returnXml);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
    
        }
    
    }
    
    

    좋은 웹페이지 즐겨찾기