Http协议学习 | 青训营笔记

56 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 2 天。

什么是HTTP

  • 超文本传输协议
  • 应用层协议,基于TCP协议
  • 请求响应
  • 简单可扩展
  • 无状态

协议分析

报文

以下是请求方法 image.png Metho的一些特点

  • 安全的,不会修改服务器的方法
  • 同样的请求被执行一次与连续执行多次的效果是一样的

状态码

常见的状态码

  • 200-客户端请求成功
  • 301-资源被永久转移到其他URL
  • 302-临时跳转
  • 401-未经授权
  • 404-请求资源不存在
  • 500-服务器内部发生了不可预期的错误
  • 504-服务器无法在规定的时间内响应

常用请求头

  • accept-接收类型
  • ContentType-客户端发送出去实体内容的类型
  • Maxage-代表资源在本地缓存多少秒,有效时间不会请求,而是使用缓存
  • Cookie-有Cookie并且同域访问会自动带上
  • Origin-最初的请求是哪里发起的
  • User-Agent-用户客户端的一些必要信息如UA头部等

常用响应头

  • ContentType-服务端返回实体内容的类型
  • Maxage-客户端的本地资源应该缓存多少秒
  • Cookie-有Cookie并且同域访问会自动带上
  • Access-Control-Allow-Origin-服务端允许的请求Origin头部

场景分析

image.png -强缓存,允许所有域名访问,资源类型为CSS

什么是跨域

跨域:指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。

例如:a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源

跨域解决方案

  • CORS
  • 代理服务器-同源策略是浏览器的安全策略,不是Http的
  • Iframe

登录

image.png

  • 使用post方法,目标域名为sso.toutiao.com,目标path/quick_login…
  • 携带信息:Postbody-格式为form,希望得到的数据格式为json,已有的cookie
  • 返回信息:数据格式json,cookie的信息