2013-07-09 2 views
1

안녕하세요.안드로이드 httpclient 멀티 파트 포스트

나는이

-----------------------------17911109517875 Content-Disposition: form-data; 
name="PERSON*1[F*2][2664]" value1 
-----------------------------17911109517875 Content-Disposition: form-data; 
name="PERSON*1[I*3][2776]" value2 
-----------------------------17911109517875 Content-Disposition: form-data; 
name="PERSON*1[O*4][2778]" value3 

같은 POST 요청을하고 HttpClient를 통해 안드로이드 장치에서 보내려고.

public String doMultipartPost(String url, List<NameValuePair> urlParameters) { 

    HttpContext localContext = new BasicHttpContext(); 
    localContext.setAttribute(ClientContext.COOKIE_STORE, cookieStore); 

    HttpPost request = new HttpPost(url); 
    HttpProtocolParams.setUserAgent(client.getParams(), "My funcy UA"); 

    MultipartEntity entity = new 
      MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE); 

    for (NameValuePair nvp : urlParameters) { 
     try { 
      entity.addPart(nvp.getName(), new StringBody(nvp.getValue())); 
     } catch (UnsupportedEncodingException e) { 
      e.printStackTrace(); 
     } 
    } 

    request.setEntity(entity); 

    try { 
     HttpResponse response = client.execute(request, localContext); 
    } catch (ClientProtocolException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

    return "post"; 

} 

그러나 방법에 대한 -----------------------------17911109517875 Content-Disposition: form-data; 가 MultipartEntity에 의해 자동으로 설정 또는 내가 코드에서 어딘가를 작성해야합니까? 이 코드는 작동하지 않습니다.

감사합니다.

+0

같은 문제가 있습니까? 해결 방법을 찾았습니까? – Jim

답변

0

저는 개인 프로젝트에서 비슷한 코드를 사용하고 있습니다. This SO question도 약간의 지침을 줄 수 있습니다.

경계는 라이브러리에 의해 자동으로 설정되므로 HttpMultipartMode의 구문에 따라 처리 할 필요가 없습니다. STRICT 기본 모드를 사용했습니다.

additional libraries needed을 추가 했습니까? 나를 위해 일한 ...

<dependency> 
    <groupId>org.apache.httpcomponents</groupId> 
    <artifactId>httpmime</artifactId> 
    <version>4.2.3</version> 
</dependency> 
<dependency> 
    <groupId>org.apache.james</groupId> 
    <artifactId>apache-mime4j-core</artifactId> 
    <version>0.7.2</version> 
</dependency> 

오류에 대한 자세한 정보를 제공 할 수 있습니까? logcat의 추적 또는 서버의 로그?