二、HTTP各种特性总览

本文主要参考慕课网Jokcy老师课程HTTP协议原理+实践

请支持正版,抵制盗版,维护每一位辛苦付出的人的合法权益!

本章关键词:cors、缓存、cookie、session、Redirect、CSP

开始更新http基础相关内容,先发一部分,本系列会很快完结,后续内容待定,可能是并发内容,也可能数据结构

一、认识HTTP客户端

  • 最常用的HTTP客户端:浏览器


    curl请求.png

二、CORS跨域请求的限制与解决

  • 服务端返回的时候,返回头加入:Access-Control-Allow-Origin:'*'

这个是浏览器提供的功能,浏览器会判断跨域的返回头是否有Access-Control-Allow-Origin,否则浏览器会屏蔽返回内容
浏览器允许在标签中加载链接(如src)跨域

  • 跨越其他解决方案和http协议没太大关系,暂时未列出

三、CORS跨域限制以及预请求验证

  • 跨越的时候允许的方法

GET HEAD POST

  • 允许的Content-Type

text/plain multipart/form-data application/x-www-form-urlencoded

  • 预请求
    Access-Control-Allow-Headers 允许的请求头

四、缓存头Cache-Control的含义和使用

1.特性

  • 可缓存性

public/ private/ no-cache

  • 到期

max-age=<seconds>/s-maxage=<seconds>/max-stale=<seconds>

  • 重新验证

must-revalidate/proxy-revalidate

  • 其他

no-store/no-transform

五、缓存验证Last-Modified和Etag的使用

1.Last-Modified

  • 上次修改时间
  • 配合If-Modified-Since或者If-Unmodified-Since使用
  • 对比上次修改时间以验证资源是否需要更新

2.Etag

  • 数据签名
  • 配合If-Match或者If-Non-Match使用
  • 对比资源的签名判断是否使用缓存

六、cookie和session

1.cookie

  • 定义:
    是在服务端返回数据的时候通过Set-Cookie设置到浏览器,保存到浏览器里面的内容
  • 下次请求会自动带上
  • 键值对,可以设置多个
  • 属性
    max-age和expires设置过期时间
    Secure只在https的时候发送
    HttpOnly无法通过document.cookie访问

2.session

  • 使用最多的是使用cookie保存session,但是session的实现方法不止这一种
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 输入域名到显示网页的网络过程 5层网络模型介绍 低三层 物理层主要作用是定义物理设备如何传输数据数据链路层在通信的...
    谷子多阅读 4,227评论 0 0
  • 引用自HTTP访问控制(CORS) 当 Web 资源请求由其它域名或端口提供的资源时,会发起跨域 HTTP 请求(...
    有涯逐无涯阅读 7,368评论 0 4
  • 本文对HTTP协议的相关特性以及客户端-服务端在请求-响应过程中的涉及的问题进行略为深入的讨论,也是参考慕课网课程...
    落痕無情阅读 3,038评论 0 0
  • 什么是跨域 跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实...
    Yaoxue9阅读 5,115评论 0 6
  • 什么是跨域 跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实...
    他方l阅读 4,702评论 0 2