2012-03-26 4 views
1

에 HttpPost에 안드로이드에서 파일을 시도하는 것은 대략 코드 내가 지금 함께 일하고 있어요 않습니다 :내 서버

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2); 
nameValuePairs.add(new BasicNameValuePair("json", json.toString())); 
nameValuePairs.add(new BasicNameValuePair("blob", file.getAbsolutePath())); 
post_request.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 

의 I는 서버에서 다시 얻을 응답이 첫 번째 add() 문 좋지만, 두 번째는 경로를 보내려고하지 않고 파일을 보내려고합니다. .getAbsolutePath()을 사용하면 트릭을 수행해야하지만 스트링 만 허용하기 때문에 나를 허용하지 않습니다. 파일을 보내는 방법에 대해 어떻게 생각합니까?

답변

1

UrlEncodedForm이 아닌 MultipartEntity를 사용해야합니다. Multipart 본문에서는 다른 MIME 유형의 객체를 저장할 수 있습니다.

+0

'UrlEncodedFormEntity'를 사용하는 유일한 시간은 제 코드에 나와 있습니다. 이를 단순히'MultipartEntity'로 바꾸면 작동하지 않습니다. Eclipse가 인식하지 못합니다. – EGHDK

+1

Apache httpmime에 jar 파일이 필요합니다. 또한 [이 블로그 게시물]을 참조하십시오. (http://linklens.blogspot.it/2009/06/android-multipart-upload.html) – Raffaele

+0

누군가가 언급 할 때 항상 정확한 .jar 파일을 찾기가 어렵습니다. 이 링크가 다운로드 할 수 있는지 확인할 수 있습니까? http://mvnrepository.com/artifact/org.apache.httpcomponents/httpmime/4.0-alpha3 – EGHDK

관련 문제