2011-09-27 69 views
0

是否可以爲HttpPost設置2個實體?像:使用Gzip和NameValuePair的Android HttpPost

HttpPost post = new HttpPost("http://www.abc.com"); 
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2); 
     nameValuePairs.add(new BasicNameValuePair("A", 
       a)); 
     nameValuePairs.add(new BasicNameValuePair("B", b)); 
post.setEntity(new UrlEncodedFormEntity(nameValuePairs, "UTF-8")); 

post.setHeader("Accept-Encoding", "gzip"); 

ByteArrayEntity bae = new ByteArrayEntity(compress(json)); 

post.setEntity(bae); 
HttpResponse resp; 
resp = client.execute(post); 

我試圖實現告訴服務器,有一些參數和zip文件。

回答

3

是您可以使用nameValuePairs發送zip文件並傳遞參數。去下面的鏈接,你可能會得到你的解決方案。

http://vikaskanani.wordpress.com/2011/01/11/android-upload-image-or-file-using-http-post-multi-part/

Android upload multi files to server via http post

在這個環節上把你的zip文件地址的地方形象。你可能需要做一些修改。

+0

看到我編輯過的鏈接,希望對你有所幫助。 – amity

+0

會測試一下。謝謝! – Maurice

+0

這些鏈接對於實現我需要的一點調整非常有用,謝謝! – Maurice

1

不是這樣的。您需要使用多部分實體,如果相對簡單,則可以手動對其進行編碼,或者使用org.apache.http.entity.mime.MultipartEntity(不屬於Android SDK)。在SO上有多個帖子,搜索'android multipart'。

相關問題