概述
1.1HTTP协议用于客户端和服务器端之间的通信
**通过请求和响应交换,达成通信。**在两台计算机之间使用HTTP协议时,在一条哦通信电路上必定有一端是客户端,另一端是服务器端(按实际情况两台计算机角色可能会互换)
请求报文
这是一个请求报文,请求报文是有请求方法:GET,请求URI:/index.htm,协议版本:HTTP1.1,可选的请求首部字段,内容实体构成
//方法 URI 协议版本
GET/index.htm HTTP/1.1
//请求首部字段
HOST: hackr.jp
Connection:keep-alive
Content-Type:application/X-www-form-urlencoded
Content-Length:16
//内容实体
name=ueno&age=37
GET:请求访问的类型(method)
/index.htm:指明了请求访问的资源对象也叫请求URI
HTTP1.1:HTTP的版本号,用来提示客户端使用的HTTP协议功能
响应报文
这是一个响应报文,响应报文基本是有协议版本:HTTP/1.1,状态码:200,用以解释状态码的原因短语:OK,可选的响应首部字段以及主体构成
//协议版本 状态码 状态码的原因短语
HTTP/1.1 200 OK
//响应首部字段
Date:Tue,10 Jul 2012 06:50:15 GMT
Connect-Length:362
Content-Type:text/html
//主体
<html>
......
</html>
1.2HTTP是不保存状态的协议
使用HTTP协议,每当有心得请求发送时,就会有新的响应产生,协议本身不保留之前一切的请求或响应的报文信息,但引入Cookie技术后,就可以有保存用户状态的功能(例如:跳转到页面的其他页面后也能持续保持登录状态)
1.3HTTP中的URI
URI:Uniform Resource Identifier,统一资源标识符
URL:Uniform Resource Location统一资源定位符
来自:https://segmentfault.com/a/1190000021056129?utm_source=tag-newest
峨眉山的猴子,即指定了位置,还指明了猴子。 但是,对于猴子这一个物种来说,猴子并不只是存在峨眉山中。 我们不难理解,峨眉山的猴子只是猴子的一种。 峨眉山的猴子是猴子的子集。
再回到上面,对比看看, URL和URI 的关系也是如此。 URL 只是 URI 的一种。 因此URL是UIR的子集。
1.4告知服务器意图的HTTP方法
- GET:获取资源
GET/index.htm HTTP/1.1
HOST: hackr.jp
返回index.htm的页面资源
- POST:传输实体主体
POST/submit.cig HTTP/1.1
HOST: www.hackr.jp
Content-Length:1560(1560字节的数据)
返回submit.cgi接收数据的处理结果
- PUT:传输文件
```xml
PUT/example.html HTTP/1.1
HOST: www.hackr.jp
Content-Type:text/html
Connect-Length:1560(1560字节的数据)
HTTP1.1的PUT方法自身不带验证机制,任何人都可以上传文件,存在安全性问题,因此Web网站一般不使用该方法,若配合Web应用程序的验证机制,或架构设计采用REST标准的同类Web网站,就可能开放使用PUT方法
**- HEAD:获得报文首部**
**- DELETE:删除文件**
**- OPTIONS:询问支持的方法**
**- TRACE:追踪路径**
**- CONNECT:要求用隧道协议连接代理**
最后
以上就是怕黑猫咪为你收集整理的HTTP协议详解的全部内容,希望文章能够帮你解决HTTP协议详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复