Android网络通信中HttpEntity默认支持的几种类型

有一个重要的类,来自org.apache.http.entity.AbstractHttpEntity,有7个直接子类:

BasicHttpEntity,

ByteArrayEntity,

EntitiyTemplate,

FileEntity,

InputStreamEntity,

SerializableEntity,

 

1个间接子类:UrlEncodedFormEntity,直接继承自StringEntity

有两个构造方法:

1. UrlEncodedFormEntity(List<? extends NameValuePair> parameters, String encoding)

2. UrlEncodedFormEntity(List<? extends NameValuePair> parameters)

第二个方法将使用默认编码,即ISO-8859-1

 

List<NameValuePair> qparams = new ArrayList<NameValuePair>();
qparams.add(new BasicNameValuePair("q", "httpclient"));
qparams.add(new BasicNameValuePair("btnG", "Google Search"));
qparams.add(new BasicNameValuePair("aq", "f"));
qparams.add(new BasicNameValuePair("oq", null));
URI uri = URIUtils.createURI("http", "www.google.com", -1, "/search",
    URLEncodedUtils.format(qparams, "UTF-8"), null);
HttpGet httpget = new HttpGet(uri);
System.out.println(httpget.getURI());

输出结果:

http://www.google.com/search?q=httpclient&btnG=Google+Search&aq=f&oq=

你可能感兴趣的:(android,网络)