Http协议概述

1.人与人的对话其实也是在交换数据,电脑与电脑的通信也是在交换数据,人与人说话根据具体情况有时候需要说英语,有时候需要说中文,电脑与电脑也有要根据应用场景选取特定的协议,而我们上网用的最多的就是Http协议,还有FTP,SMTP等等。

HTTP(Hypertext Transfer Protocal)是超文本传输协议,基于请求/响应模式的,无状态的协议,是利用传输层的TCP协议完成工作的。客户端首先发起连接,然后向服务器发送请求(服务器一直在等待客户端的连接),服务器对这个请求进行处理,然后将结果返回到客户端,并且关闭连接。设计HTTP协议最初的目的就是为了提供一种发布和接收HTML页面的方法。

HTTP1.1和HTTP1.0的最大不同是提供了持续连接机制(Persistent Connections),在服务器将响应信息返回到客户端,并不是马上关闭连接,这是客户端可以继续发送请求,节省了网络连接的开销。而且要注意通常我们向服务器发送了一个请求,服务器返回一段html代码,当读到有图片或者视频的时候会又再次向服务器发送请求获取图片或视频,没获取一种资源,就要建立一次连接的话,增加了HTTP服务器的开销,造成了网络上的信息阻塞。


2.URL与URI

URI(Uniform Resuource Identifier) 统一资源标识符,是一个用于标识某一互联网资源名称的字符串。,URL(Uniform Resuource Locator)统一资源定位符,是一种特殊类型的URI,它包含了用于查找某个资源的足够信息【协议名://主机名:端口号/资源路径】。还有一种说法是:

URI 是从虚拟根路径开始的
URL是整个链接
如URL http://zhidao.baidu.com/question/68016373.html  
URI 是/question/68016373.html

3.既然说HTTP协议是基于请求/响应模式的,那么我们必须要清楚请求包括哪些内容,响应又包括了哪些内容。

3.1HTTP请求,客户端连接上服务器后,向服务器请求某个web资源,称之为客户端向服务器发送了一个请求。包括请求行,消息报头,请求正文(实体内容),下图是访问

http://localhost:8080/UserManager2/  的请求行和消息头


【1】请求行:Method Request-URI HTTP-Version CRLF

描述客户端的请求方式和请求的资源URI,以及使用HTTP协议的版本号,CRLF表示回车换行

在上图中,请求行为: GET /UserManger2/ HTTP/1.1 (CRLF)

请求方法包括如下几种:

GET  用于获取有Request-URI标识的资源的信息。当我们在浏览器的地址栏输入网址的方式访问网页的时候,浏览器采用的就是GET方法向服务器获取资源。请求的数据会附在URL之后,即把数据放置在HTTP协议头中。例如:访问http://localhost:8080/UserManager2/login?name=zjz&pwd=123


POST  请求服务器接收在请求正文中封装的数据,并将其作为请求行中的URI所标识的资源的一部分


HEAD  请求获取由Request-URI所标识的资源的响应消息报头,通常被用于测试超链接的有效性,是否可以访问,以及最近是否有更新

PUT  请求服务器存储一个资源,并用Request-URI作为其标识

DELETE 请求服务器删除有Request-URI所标识的资源

TRACE  请求服务器回送收到的请求信息,主要用于测试或者诊断

OPTIONS  请求查询服务器的性能,或者查询与资源相关的选项和需求

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值