`
80demon
  • 浏览: 75281 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android的HTTP协议

 
阅读更多

1.超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。  2. java接口 --------java.net.*
3. apache 接口---------org.apache.http.*


Apache提供的HttpCient,实现起来简单方便:

A: GET方式操作

  1. public void get() {
  2.   String url = httpUrl + "?text1=" + text1.getText().toString()
  3.   + "&text2=" + text2.getText().toString();
  4.   // 创建HttpGet对象
  5.   HttpGet request = new HttpGet(url);
  6.   // 创建HttpClient对象
  7.   HttpClient client = new DefaultHttpClient();
  8.   HttpResponse httpResponse = null;
  9.   try {
  10.   httpResponse = client.execute(request);
  11.   if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
  12.   text3.setText(EntityUtils.toString(httpResponse.getEntity(),
  13.   "utf-8"));
  14.   }
  15.   } catch (ClientProtocolException e) {
  16.   e.printStackTrace();
  17.   } catch (IOException e) {
  18.   e.printStackTrace();
  19.   }
  20.   }
  21.   public void get() {
  22.   String url = httpUrl + "?text1=" + text1.getText().toString()
  23.   + "&text2=" + text2.getText().toString();
  24.   // 创建HttpGet对象
  25.   HttpGet request = new HttpGet(url);
  26.   // 创建HttpClient对象
  27.   HttpClient client = new DefaultHttpClient();
  28.   HttpResponse httpResponse = null;
  29.   try {
  30.   httpResponse = client.execute(request);
  31.   if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
  32.   text3.setText(EntityUtils.toString(httpResponse.getEntity(),
  33.   "utf-8"));
  34.   }
  35.   } catch (ClientProtocolException e) {
  36.   e.printStackTrace();
  37.   } catch (IOException e) {
  38.   e.printStackTrace();
  39.  }
  40.   }

B:POST方式操作

  1. public void post() {

  2.   // 创建HttpPost对象

  3.   HttpPost httpRequest = new HttpPost(httpUrl);

  4.   // 创建传递参数集合

  5.   List params = new ArrayList();

  6.   params.add(new BasicNameValuePair("text1", text1.getText().toString()));

  7.   params.add(new BasicNameValuePair("text2", text2.getText().toString()));

  8.   // 设置字符集

  9.   try {

  10.   HttpEntity entity = new UrlEncodedFormEntity(params, "utf-8");

  11.   httpRequest.setEntity(entity);

  12.   // 创建连接对象

  13.   HttpClient client = new DefaultHttpClient();

  14.   // 执行连接

  15.   HttpResponse response = client.execute(httpRequest);

  16.   if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {

  17.   text3.setText(EntityUtils.toString(response.getEntity(),

  18.   "utf-8"));

  19.   }

  20.   } catch (UnsupportedEncodingException e) {

  21.   // TODO Auto-generated catch block

  22.   e.printStackTrace();

  23.   } catch (ClientProtocolException e) {

  24.   // TODO Auto-generated catch block

  25.   e.printStackTrace();

  26.   } catch (IOException e) {

  27.   // TODO Auto-generated catch block

  28.   e.printStackTrace();

  29.   }

  30.   }

  31.   public void post() {

  32.   // 创建HttpPost对象

  33.   HttpPost httpRequest = new HttpPost(httpUrl);

  34.   // 创建传递参数集合

  35.   List params = new ArrayList();

  36.   params.add(new BasicNameValuePair("text1", text1.getText().toString()));

  37.   params.add(new BasicNameValuePair("text2", text2.getText().toString()));

  38.   // 设置字符集

  39.   try {

  40.   HttpEntity entity = new UrlEncodedFormEntity(params, "utf-8");

  41.   httpRequest.setEntity(entity);

  42.   // 创建连接对象

  43.   HttpClient client = new DefaultHttpClient();
  44. // 执行连接
  45.   HttpResponse response = client.execute(httpRequest);
  46.   if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
  47.   text3.setText(EntityUtils.toString(response.getEntity(),
  48.   "utf-8"));
  49.   }
  50.   } catch (UnsupportedEncodingException e) {
  51.   // TODO Auto-generated catch block
  52.   e.printStackTrace();
  53.   } catch (ClientProtocolException e) {
  54.   // TODO Auto-generated catch block
  55.   e.printStackTrace();
  56.   } catch (IOException e) {
  57.   // TODO Auto-generated catch block
  58.   e.printStackTrace();
  59.   }
  60.   }
分享到:
评论

相关推荐

    android http协议 网络编程 经典完整代码

    本篇文章将深入探讨如何在Android中进行HTTP协议的网络编程,并以`HttpTestActivity.java`为例,分析经典完整的代码实现。 首先,我们需要了解Android网络操作的基本原则。由于Android的安全策略,所有网络操作必须...

    老罗android视频开发源码和ppt--android之http协议编程.rar

    在Android应用开发中,HTTP协议编程是一个至关重要的环节,它涉及到客户端如何与服务器进行数据交互。"老罗android视频开发源码和ppt--android之http协议编程.rar"这个压缩包包含的资源,很显然是为了帮助开发者深入...

    Android HTTP协议数据上传示列源程序

    本示例源程序聚焦于使用HTTP协议在Android应用中上传数据,具体是通过Android Studio中的HttpURLConnection类来实现。同时,服务器端使用ASP(Active Server Pages)进行数据处理,将接收到的数据保存至数据库并进行...

    老罗Android视频开发教程 android之http协议编程代码

    在Android应用开发中,HTTP协议编程是至关重要的一个环节,特别是在进行网络通信时。老罗的这个Android视频教程深入浅出地讲解了如何在Android环境中使用HTTP协议进行数据交互,对于初学者和有一定经验的开发者来说...

    Android Http协议访问网络实例(3种)

    "Android Http协议访问网络实例(3种)" Android Http协议访问网络实例是Android开发中常见的网络交互方式,本篇文章将对Android Http协议访问网络实例进行详细介绍,包括三种方法:HttpConnection、OKHTTP和...

    android利用http协议把网页内容下载到指定文件夹

    在Android平台上,将网页内容通过HTTP协议下载到指定文件夹是一项常见的任务,尤其在离线浏览、数据缓存或者后台更新资源的场景中。HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,它允许客户端(如...

    onvif协议在Android上的实现

    **Onvif协议详解** ...总的来说,实现ONVIF协议在Android上是一项技术挑战,需要深入理解网络通信、SOAP、XML解析以及Android系统特性。通过不断学习和实践,开发者可以创建出能与各种ONVIF设备无缝交互的应用。

    android中的Http(一)Http协议基础 源码

    本篇文章将深入探讨Android中使用HTTP的基础知识,包括HTTP协议的基本原理以及源码解析。 首先,理解HTTP协议的基本概念至关重要。HTTP是一种应用层协议,用于从Web服务器传输超文本文档到客户端(例如,Android...

    Android中http协议上传文件

    ### Android中HTTP协议上传文件知识点解析 #### 一、HTTP协议简介 HTTP(HyperText Transfer Protocol)即超文本传输协议,是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是基于TCP/IP通信协议来...

    android之http协议编程)第三集hjava_http_post.zip

    在Android应用开发中,HTTP协议是连接服务器进行数据交互的重要方式。本教程主要聚焦于HTTP POST方法的使用,这是HTTP协议中的一个核心概念,用于向服务器发送数据。POST请求常用于提交表单、上传文件或者在API接口...

    Android应用安全实战:Frida协议分析.docx

    Android 应用安全实战:Frida 协议分析 Android 应用安全是目前智能手机安全中最重要的问题之一。随着智能手机的普及,Android 应用安全问题越来越受到关注。Android 应用安全不仅关系到用户的隐私和财产安全,还...

    android手写Http协议上传文件

    "android手写Http协议上传文件"这个主题就是关于如何利用Socket编程实现一个简单的HTTP协议来上传本地文件到服务器的过程。下面将详细讲解这个过程涉及的关键知识点。 1. **HTTP协议基础**: HTTP(超文本传输协议...

    Android利用Http下载文件

    在Android平台上,利用Http协议进行文件下载是一项常见的任务,它涉及到网络编程、多线程、文件操作等多个技术领域。本文将深入探讨如何在Android中实现这个功能,主要围绕标题“Android利用Http下载文件”和提供的...

    Android实现基于Http协议的文件下载

    在Android开发中,基于Http协议的文件下载是一个常见的需求,主要涉及到网络编程、多线程以及文件操作等技术。下面将详细讲解这个过程,并结合提供的文件名称列表来解析实现的关键点。 1. **Http协议**:HTTP...

    Android基于HTTP协议的多线程断点下载器的实现源码

    我的Android进阶之旅------>Android基于HTTP协议的多线程断点下载器的实现的源代码,原文地址:http://blog.csdn.net/ouyang_peng/article/details/10125409

    android RTSP协议播放视频

    8. **其他协议支持**:除了RTSP,Android也支持HTTP、MMS等其他流媒体协议。如果服务器支持,可以考虑使用更简单的HTTP Live Streaming (HLS)协议,它在移动网络上的性能通常更好。 以上就是关于Android平台使用...

    Android&Tomcat服务器Http协议通信

    在Android开发中,与服务器进行数据交互是必不可少的,而HTTP协议是互联网上应用最为广泛的一种网络协议。本示例将关注如何在Android客户端与Tomcat服务器之间利用HTTP协议进行通信,这对于初学者来说是非常实用的...

Global site tag (gtag.js) - Google Analytics