Linux-http协议(应用层协议)-http概述-http格式-http版本-http方法-http状态码

文章目录

  • 1. HTTP协议(应用层)
    • 1.1 http协议的概述
    • 1.2 http协议的url解释
    • 1.3 urlencode和urldecode
    • 1.4 http协议的格式
    • 1.5 http的协议版本
    • 1.6 http的方法
    • 1.7 http的状态码
    • 1.8 http常见Header
  • 2. 零碎知识点

1. HTTP协议(应用层)

1.1 http协议的概述

  超文本传输协议,是属于应用层的协议,web->server,无连接,无状态,那是不是可以说是不安全的?不是的,在传输层是使用的TCP协议,而TCP是面向连接的,所以是安全的。

1.2 http协议的url解释

Linux-http协议(应用层协议)-http概述-http格式-http版本-http方法-http状态码_第1张图片

  1. 协议方案名
  2. 登录信息(认证)
  3. 服务器地址
  4. 服务器端口号
  5. 带层次的文件路径
  6. 查询字符串
  7. 片段标识符

  http和https,区别https会加密传输,这两个方法中相差一个ssl,使用的是非对称加密,http监听80端口,https监听443端口。

1.3 urlencode和urldecode

C+±>C%2B%2B
  urlencode:将字符转换成为16进制
  urldecode:将16进制转换成字符
  %:提示服务器后面的数据是被urlencode过的,多个key=value的键值对,以&符号进行分割。
  片段标识符:定位资源的位置
命令: ping 网址
功能: 得到网址的ip地址
在这里插入图片描述

1.4 http协议的格式

请求:
Linux-http协议(应用层协议)-http概述-http格式-http版本-http方法-http状态码_第2张图片
响应
Linux-http协议(应用层协议)-http概述-http格式-http版本-http方法-http状态码_第3张图片
  首行: 【版本号】+【状态码】+【状态码解释】
  Header: 请求的属性,冒号分割的键值对,每组属性之间使用\r\n分割,遇到空行表示Header部分结束
  Body: 空行后面的内容都是Body,Body允许为空字符串,如果Body存在,则在Header中会有一个Content-Length属性来标识Body的长度,如果服务器返回了一个html页面,那么html页面的内容就再body当中。

1.5 http的协议版本

  HTTP/0.9 :1990年问世,没有作为正式的标准
  HTTP/1.0 :1996年5月公布,初期版本
  HTTP/1.1 :1997年1月公布,目前主流的HTTP协议版本
  HTTP/2.0 :新一代的HTTP协议版本,暂时未被广泛使用

1.6 http的方法

方法 说明 支持的HTTP协议版本
GET 获取资源 1.0、1.1
POST 传输实体主体 1.0、1.1
PUT 传输文件 1.0、1.1
HEAD 获得报文首部 1.0、1.1
DELETE 删除文件 1.0、1.1
OPTIONS 询问支持的方法 1.1
TRACE 追踪路径 1.1
CONNECT 要求用隧道协议连接代理 1.1
LINK 建立和资源之间的联系 1.0
UNLINE 断开连接关系 1.0

1.7 http的状态码

类别 原因短语
1xx informational(信息性状态码) 接收的请求正在处理
2xx success(成功状态码) 请求正常处理完毕
3xx redirection(重定向状态码) 需要进行附加操作以完成请求
4xx Client Error(客户端错误状态码) 服务器无法处理请求
5xx server error(服务器错误状态码) 服务器处理请求出错

常见的状态码:
  200(ok)
  404(not found)
  403(forbidden)
  302(redirect)
  504(bad gateway)

1.8 http常见Header

  content-type: 正文数据类型(text/html等)
  content-length: body的长度,描述正文的长度
  host: 客户端告知服务器请求的资源在哪个主机的哪个端口
  user-agent: 声明用户的操作系统和浏览器版本信息,可以防止爬虫
  referer: 当前页面是从哪个页面跳转过来的
  location: 搭配3xx状态码使用,告诉客户端接下来去哪里
  cookie: 用于在客户端存储少量信息,通常用于实现会话功能,存了会话ID,服务器通过会话ID就能知道是谁,这个是存在服务器当中的

2. 零碎知识点

  1.持久化处理叫做保存。
  2.三次握手之后还会ssl握手:决定了用什么算法,什么证书,服务端私钥解密,客户端公钥加密。

你可能感兴趣的:(计算机网络)