JSP&&Android中使用Http

先说两种客户端发送http到服务端、然后再说服务端如何处理


首先客户端有两种方式可以发送http请求(当然还有其他方式,这里只讨论这两种方式):

1.1、doGet方式

客户端中先使用“url?name1=value1&&name2=value2&&....”来new出HttpGet的对象

使用HttpClient的对象:deafultHttpClient来发送HttpGet的对象到服务端、同时将会获得HttpResponse对象、

接着HttpResponse对象调用getEntity()来获取服务端发送过来的信息

1.2、doPost方式

客户端先使用URL来new出HttpPost的对象

接着使用NameValuePair来保存要传递的Post的参数、

可以使用集合框架、例如new一个List<NameValuePair>的对象params、并使用其add(new BasicNameValuePair("name","value"))方法来将数据保存起来、

此时还不能直接发送、要将params放到HttpPost的对象中才行、然而List<NameValuePair>类型的params并不能直接被放置到HttpPost中

所以需要转换成另一种类型的数据:HttpEntity、在转换的同时还可以设置一下编码:

HttpEntity httpEntity=new UrlEncodedFormEntity("params","GB2312");

将数据参数放置到HttpPost中:

httpPost.setEntity(httpEntity);

使用HttpClient的对象:deafultHttpClient来发送HttpPost的对象到服务端、同时将会获得HttpResponse对象、

接着HttpResponse对象调用getEntity()来获取服务端发送过来的信息


2、服务端:

服务端接收数据比较简单

首先设置下请求编码防止中文乱码

然后使用request对象来获取参数就行了

String username=request.getParameter("name")

你可能感兴趣的:(jsp,android,http,HttpPost,HttpGet)