2014-09-08 3 views
0

내 프로젝트에 org.apache.http을 추가하고 다운로드하여 프로젝트에 추가했는데 테스트 용 코드를 일부 개발했지만 프로젝트에서 org.apache.http을 제거하면 코드가 제대로 작동하고 org.apache.http이 추가됩니다. 기본적으로 android SDK에 있으며 프로젝트에 추가 할 필요가 없습니다.Android : apache HttpComponents Core

public class ElementalHttpGet { 

    public static void main(String[] args) throws Exception { 
     HttpProcessor httpproc = HttpProcessorBuilder.create() 
      .add(new RequestContent()) 
      .add(new RequestTargetHost()) 
      .add(new RequestConnControl()) 
      .add(new RequestUserAgent("Test/1.1")) 
      .add(new RequestExpectContinue(true)).build(); 

     HttpRequestExecutor httpexecutor = new HttpRequestExecutor(); 

     HttpCoreContext coreContext = HttpCoreContext.create(); 
     HttpHost host = new HttpHost("localhost", 8080); 
     coreContext.setTargetHost(host); 

     DefaultBHttpClientConnection conn = new DefaultBHttpClientConnection(8 * 1024); 
     ConnectionReuseStrategy connStrategy = DefaultConnectionReuseStrategy.INSTANCE; 

     try { 
      String[] targets = { 
       "/", 
       "/servlets-examples/servlet/RequestInfoExample", 
       "/somewhere%20in%20pampa"}; 

      for (int i = 0; i < targets.length; i++) { 
       if (!conn.isOpen()) { 
        Socket socket = new Socket(host.getHostName(), host.getPort()); 
        conn.bind(socket); 
       } 
       BasicHttpRequest request = new BasicHttpRequest("GET", targets[i]); 
       System.out.println(">> Request URI: " + request.getRequestLine().getUri()); 

       httpexecutor.preProcess(request, httpproc, coreContext); 
       HttpResponse response = httpexecutor.execute(request, conn, coreContext); 
       httpexecutor.postProcess(response, httpproc, coreContext); 

       System.out.println("<< Response: " + response.getStatusLine()); 
       System.out.println(EntityUtils.toString(response.getEntity())); 
       System.out.println("=============="); 
       if (!connStrategy.keepAlive(response, coreContext)) { 
        conn.close(); 
       } else { 
        System.out.println("Connection kept alive..."); 
       } 
      } 
     } finally { 
      conn.close(); 
     } 
    } 
} 

답변

관련 문제