1 //创建一个http客户端
2 HttpClient client=new DefaultHttpClient();
3 //创建一个GET请求
4 HttpGet httpGet=newHttpGet("http://www.store.com/products");
5 //向服务器发送请求并获取服务器返回的结果
6 HttpResponse response=client.execute(httpGet);
7 //返回的结果可能放到InputStream,http Header中等。
8 InputStream inputStream=response.getEntity().getContent();
9 Header[] headers=response.getAllHeaders();
通过解析服务器返回的流,我们可以将它转为字符串,获取相应的数据。
第二步可以向服务器增加商品,同样的道理,我们创建一个POST请求,带上相关的商品信息即可。
01 //创建一个http客户端
02 HttpClient client=new DefaultHttpClient();
03 //创建一个POST请求
04 HttpPost httpPost=newHttpPost("http://www.store.com/product");
05 //组装数据放到HttpEntity中发送到服务器
06 final List dataList = new ArrayList();
07 dataList.add(new BasicNameValuePair("productName","cat"));
08 dataList.add(new BasicNameValuePair("price","14.87"));
09 HttpEntity entity = new UrlEncodedFormEntity(dataList,"UTF-8");
10 httpPost.setEntity(entity);
11 //向服务器发送POST请求并获取服务器返回的结果,可能是增加成功返回商品ID,或者失败等信息
12 HttpResponse response=client.execute(httpPost);
第三步是如果修改商品信息,我们只需要创建一个PUT请求,带上要修改的参数即可。本例假设第三步中增加的商品返回ID为1234,下面将为商品的价格修改为11.99.
01 //创建一个http客户端
02 HttpClient client=new DefaultHttpClient();
03 //创建一个PUT请求
04 HttpPut httpPut=new HttpPut("http://www.store.com/product/1234");
05 //组装数据放到HttpEntity中发送到服务器
06 final List dataList = new ArrayList();
07 dataList.add(new BasicNameValuePair("price","11.99"));
08 HttpEntity entity = new UrlEncodedFormEntity(dataList,"UTF-8");
09 httpPut.setEntity(entity);
10 //向服务器发送PUT请求并获取服务器返回的结果,可能是修改成功,或者失败等信息
11 HttpResponse response=client.execute(httpPut);
第四步我们把上面增加的商品删除,只需要向服务器发送一个DELETE请求即可。
1 //创建一个http客户端
2 HttpClient client=new DefaultHttpClient();
3 //创建一个DELETE请求
4 HttpDelete httpDelete=newHttpDelete("http://www.store.com/product/1234");
5 //向服务器发送DELETE请求并获取服务器返回的结果,可能是删除成功,或者失败等信息
6 HttpResponse response=client.execute(httpDelete);
好了,就这么简单,这样就实现了从android客户端调用Rest服务对资源进行增、删、改、查操作。
android客户端与服务器端交互过程
最新推荐文章于 2021-05-26 04:53:19 发布