http 学习

330 阅读2分钟

学习地址 www.bilibili.com/video/av368…

http 超文本传输协议

它是基于TCP的应用协议,来规定客户端与服务器端数据传输格式,默认80端口,基于请求与响应模式的、无状态的、应用层协议

http 报文主要由请求行、请求头部、空一行、请求体

GET请求没有请求体

请求的方法

URL

请求头

  • Host 主机ip地址或域名 去哪里去
  • User-Agent 客户端相关信心,如操作系统、浏览器等信息
  • *Accept 客户端接受信息类型,如 image/jpg,text/html,application/json
  • Accept-Charset 客户端接受的字符集, 如gb2312
  • Accept-Encoding 可接受的内容编码,如gzip
  • Accept-Language 可接受的语言,如zh-CN
  • *Authorization 客户端提供给服务器,进行权限认证的信息,相当于token
  • *Cookie 携带的cookie信息,也可以做权限鉴定
  • Referer 当前文档的URL,从那个链接过来,做一下统计,防止盗链
  • *Content-Type 请求体的内容的类型,如application/x-www-urlencoded(表单的格式)
  • Content-Length 数据的长度
  • Cache-Control 缓存机智,如Cache-Control:no-cache
  • Pragma 防止页面缓存,和上面作用一样

还可以自定义一些信息

http响应报文

状态码

  • 1XX 提示信息,成功接收
  • 2XX 成功
  • 3XX 重定向相关
  • 4XX 客户端错误
  • 5XX 服务器错误

响应头

  • Serve HTTP服务器的软件信息
  • Date 响应报文的时间
  • *Set-Cookie 种Cookie
  • Last-Modified 资源最后修改时间
  • *Content-type 响应的类型和字符集,如Content-Type: application/json; charset=utf-8
  • Content-Length: 内容长度
  • Connection 如Keep-Alice,表示保持tcp连接不关闭,不是http
  • *Location 指明重定向的位置,新的URL地址,如304情况

也可以在附件一些自定义的响应头