您的位置:首页 > 理论基础 > 计算机网络

javaweb开发篇——HTTP协议请求和响应详解(上)

2015-02-06 23:04 363 查看
HTTP协议请求和响应详解(上

1,什么是HTTP协议以及特点

HTTP协议是超文本传输协议,它是TCP/IP协议的一个应用层面向对象协议,

用于定义web浏览器与web服务器之间交换数据的过程

HTTP协议的主要特点可概括如下:

(1)支持客户/服务器模式。

(2)简单快速:客户向服务器请求服务时,只需传送请求方法和路径。

请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。

由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。

(3)灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。

(4)无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,

并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

(5)无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。

缺少状态意味着如果后续处理需要前面的信息,则它必须重传,

这样可能导致每次连接传送的数据量增大。

另一方面,在服务器不需要先前信息时它的应答就较快。

2,HTTP/1.0和HTTP/1.1

1,基于HTTP协议的客户端和服务端信息图



注:客户端和服务器连接的时间是短暂的,并且每次连接只能处理一个请求和响应。

通信传输都是完全独立的请求和响应。每次请求或响应的输出内容可以是HTML文本

或二进制的图片、视频等。

支持代理:



2,HTTP/1.1 的特点

(1)在一个TCP连接上可以传送多个HTTP请求和响应

(2)多个请求和响应过程可以重叠进行

(3)增加了更多的请求头和响应头,Host等



事例:在请求一个带有三个图片的页面。

使用Http/1.1,在与服务器建立一次连接时,可以连续三次请求和响应

以至得到完整页面(三次要快速),然后断开连接。

3,如何在cmd中手动连接服务器

第一步:

打开cmd,使用telnet(是windows自带的网络客户端软件,可以连接任何服务器),

win7中没有的话可以在控制面板中打开



第二步:

假设访问www.baidu.com

操作步骤:

(1)打开cmd后输入: telnet www.baidu.com 80 回车,这时屏幕应该是一片漆黑

(2)按ctrl+]回显字符

(3)按下回车,打开输入界面。

(4)输入GET / HTTP/1.1 然后两次按回车,

注释:/代表访问百度首页,两次回车(第一次是结束输入命令,

第二次是把命令提交给服务器)。

在输入请求命令时要快速准确,要不然就会失去连接(百度大约5秒)。

操作图:





最好可以下载浏览器查看HTTP协议的插件,方便查看。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: