基于HTTP协议的网络开发

上传人:油条 文档编号:1264828 上传时间:2017-06-04 格式:PPT 页数:18 大小:148KB
返回 下载 相关 举报
基于HTTP协议的网络开发_第1页
第1页 / 共18页
基于HTTP协议的网络开发_第2页
第2页 / 共18页
基于HTTP协议的网络开发_第3页
第3页 / 共18页
基于HTTP协议的网络开发_第4页
第4页 / 共18页
基于HTTP协议的网络开发_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《基于HTTP协议的网络开发》由会员分享,可在线阅读,更多相关《基于HTTP协议的网络开发(18页珍藏版)》请在金锄头文库上搜索。

1、第7章基于HTTP协议的网络开发,主讲教师:贾震斌,本章教学目标,了解HTTP协议传输数据的基本步骤;掌握基于HTTP协议的J2ME网络连接编程步骤及方法。,本章学习建议,J2ME中基于HTTP协议的网络连接随着3G时代的来临,已经越来越成为手持移动设备主流的网络连接方式,本章内容教材限于篇幅比较简略,学习本章内容应注意立足教材面向课外,充分利用图书、互联网上的资源,扩展知识结构,提高实际开发能力。,本章目录,7.1 HTTP协议概述7.2 建立HTTP连接7.3 本章小结习题,7.1 HTTP协议概述,7.1.1HTTP连接状态,HTTP协议称为超文本传输协议,一次完整的HTTP连接过程有4

2、个步骤:连接:客户端与服务器建立连接;请求:客户端向服务器发送请求,请求有两种传输方式:get和post;应答:服务器接受客户端请求进行相关处理,并把处理结果发送给客户端口;结束:一次连接结束,客户端与服务器断开连接,以便其他客户端设备可以连接到服务器。,7.1.2HTTP请求方式,当客户端与服务器建立连接后,客户端会向服务器发送请求信息。HTTP协议中客户端向服务器发送信息的基本格式:1. 请求行:是HTTP协议发送信息的第一行,而且只有一行,包括以下部分:请求方式:可以是GET、 POST 、HEAD或其他扩展方法URL:请求的目标地址HTTP协议版本号:通常是HTTP/1.0或者HTTP

3、/1.1例:GET http:/ HTTP/1.02. 头信息:又称元信息,系统将自身的设置信息以头信息的形式发送,信息以“名称:值”的形式组成,可以有多个,也可以没有,还可以自己定义头信息。在J2ME开发时为了减少流量,就是尽量减少头信息。例:Host: 请求头|实体头:这部分可以是请求头或实体头。请求头用于告诉服务器如何解析本次请求,包括用户可以接受的数据类型、压缩方法和语言等;实体头包含实体信息类型、长度、最后修改时间、数据有效期等3. 空行:CRLF,即回车换行4. 实体 :实体是具体请求或应答内容。实体数据在以POST传递信息时,存储传递给服务器的参数内容,在以GET方式进行请求时,

4、实体数据这空。,HTTP协议响应信息,服务器在处理完客户的请求后,要向客户机发送响应消息,HTTP协议的响应消息格式与请求格式类似:1. 状态行HTTP版本号状态码:服务器对客户端的响应信息以数字代码形式给出,由3位整数组成,第1位表示信息类型,1xx为保留字段,一般不使用,2xx表示请求成功接收,3xx表示为了完成请求需客户端进一步细化请求,4xx表示客户端错误,5xx表示服务器错误。响应信息的其余2位表示代号的含义参见教材p.130131。原因叙述:信息原因的说明2. 头信息响应头|实体头:响应头主要是描述服务器的信息、重定向信息等;实体头包括实体信息类型、长度等信息3. CRLF:回车换

5、行4. 实体:响应的具体内容,如果服务器是响应浏览器的请求,这部分通常就是网页内容。,HTTP协议的三种请求方式,GET:是最常用的一种方法,其后面跟随一个URL链接,常用于向服务器请求一个静态网页,服务器接受请求后返回其请求的文档。HEAD:向服务器发送请求,但服务器不会返回资源。POST:用于向服务器发送大量数据,也可以接收服务器的大量数据,通常该方法与CGI程序或Servlet这类服务器端的程序配合,完成数据的发送或接收,如向服务器请求一个动态网页。,7.2 建立HTTP连接,J2ME连接服务器的三个步骤:建立连接:向服务器发送连接请求连接成功:等待服务器响应关闭连接:关闭与服务器的连接

6、,释放资源,建立连接方法,在J2ME中使用HTTP协议进行编程,需要使用HttpConnection 接口来实现。调用Connector的静态方法open()建立与服务器的连接:HttpConnection hc=(HttpConnection) Connector.open(URL网址),输入字节流方法,连接成功以后可以利用openInputStream()得到InputStream输入字节流,获得服务器端向客户端发送的数据,建立HTTP连接的实例一,设计程序读取网址为http:/127.0.0.1/test/test.txt的网络文件内容显示在文本域中,参见实例项目HttpTest编程思路

7、:设置一个文本域TextBox,为其建立一个exit菜单及Command命令,同时为文本域设置监听器CommandListener程序中利用Connector的open()方法打开网址,获得字节输入流,循环读取字节输入流中的字节,将这些字节转换成字符连接成一个字符串,最后将字符串显示在文本域中注:HttpConnection连接方式也可以改为通过StreamConnection方式,方法如下:StreamConnection sc=(StreamConnection)Connecor.open(“http:/127.0.0.1/test/test.txt”)注意:如果连网的话,上面语句中的ur

8、l可以必用其他网址,但要注意某些网站的网页设计使用了某些特殊技术,可能无法正常获取会造成程序运行失败,建立HTTP连接的实例二,将实例一改为用GET传输方法访问ASP网页,参见实例项目IDTest,建立HTTP连接的实例三,本实例主要特点是能显示中文字符,通过下面的方法将字符集改为GB2312:String str=new String(content.getBytes(ISO8859-I),gb2312);关于J2ME程序的中文编码问题建议通过网络搜索了解更多信息,如J2ME中文编码 问题注意:本书中该实例中编程中有错,会造成程序无法正常运行,正确的代码已在程序中给出。,7.3 本章小结,本

9、章主要介绍了通用连接框架中如何进行HTTP网络连接,习题,1. 什么是HTTP协议?简述HTTP协议连接过程。2. 服务器端对客户端请求发出响应形式是什么?3. HTTP协议中客户端向服务器端发送信息时的请示方式主要有哪几种?举例说明J2ME的HTTP连接中GET传输方式的作用。4. 在J2ME中使用HTTP协议进行编程,需要调用Connector的静态方法open()建立与服务器的连接对象接口是什么?5. 掌握“7.2 建立HTTP连接”中各程序功功能。,实验四 基于HTTP协议书的网络编程,实验名称:基于HTTP协议书的网络编程实验目的:1. 掌握基于HTTP协议的网络编程的步骤2. 掌握POST和GET数据传输方式的不同应用实验内容:1. 教材实例一2. 教材实例二实验结论1. 记录实验过程中程序运行结果、问题解决方案、结论及体会2. 提出改进思路及方法,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号