您的位置:首页 > 理论基础 > 计算机网络

android HttpClient 附带的参数

2014-07-17 12:24 183 查看
Sending images can be done using the HttpComponents libraries. Download the latest HttpClient (currently4.0.1) binary with dependencies package and copy
apache-mime4j-0.6.jar
and
httpmime-4.0.1.jar
to your project and add them to your Java build path.

You will need to add the following imports to your class.

import org.apache.http.entity.mime.HttpMultipartMode;
import org.apache.http.entity.mime.MultipartEntity;
import org.apache.http.entity.mime.content.FileBody;
import org.apache.http.entity.mime.content.StringBody;

[/code]
Now you can create a
MultipartEntity
to attach an image to your POST request. The following code shows an example of how to do this:

public void post(String url, List nameValuePairs) {

HttpClient
httpClient = new DefaultHttpClient();

HttpContext
localContext = new BasicHttpContext();

HttpPost
httpPost = new HttpPost(url);

try
{

MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);

for(int index=0; index < nameValuePairs.size(); index++) {

if(nameValuePairs.get(index).getName().equalsIgnoreCase("image"))
{

// If the key equals to "image", we use FileBody to transfer the
data

entity.addPart(nameValuePairs.get(index).getName(), new
FileBody(new File (nameValuePairs.get(index).getValue())));

} else {

// Normal string data

entity.addPart(nameValuePairs.get(index).getName(), new
StringBody(nameValuePairs.get(index).getValue()));

}

}

httpPost.setEntity(entity);

HttpResponse response = httpClient.execute(httpPost,
localContext);

} catch
(IOException e) {

e.printStackTrace();

}

}

这个方法目测写得不错,先留着用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: