1.使用的类
HttpGet 代表http的Get请求对象
HttpPost 代表http的Post请求对象
HttpClient http服务客户端,相当于浏览器
2封装类
public class AndroidNetRequestUtil {
public InputStream sendGetRequest(String url,Map<String, String> params,String encode) throws Exception{
StringBuilder requestpath=new StringBuilder(url);
requestpath.append('?');
if(params!=null){
for (Map.Entry<String, String> entry : params.entrySet()) {
requestpath.append(entry.getKey()).append('=').append(URLEncoder.encode(entry.getValue(), encode)).append('&');
}
}
HttpGet get=new HttpGet(requestpath.toString());
HttpClient client=new DefaultHttpClient();
HttpResponse response=client.execute(get);//获得服务器的响应
InputStream stream=response.getEntity().getContent();//获得响应的内容
return stream;
}
public InputStream sendPostRequest(String url,Map<String, String> params,String encode) throws Exception{
List<NameValuePair> pairs=new ArrayList<NameValuePair>();
for (Map.Entry<String, String> entry : params.entrySet()) {
String value=URLEncoder.encode(entry.getValue(),encode);
NameValuePair pair=new BasicNameValuePair(entry.getValue(),value);
pairs.add(pair);
}
HttpEntity entity=new UrlEncodedFormEntity(pairs);
HttpPost post=new HttpPost(url);
post.setEntity(entity);
InputStream stream=post.getEntity().getContent();
return stream;
}
}