当前位置: 首页 > news >正文

预检请求OPTIONS

这里写目录标题

  • 简单请求和非简单请求
    • 简单请求
    • 非简单请求
  • 预检请求OPTIONS

简单请求和非简单请求

  • 浏览器将请求分为两大类:简单请求(simple request)和非简单请求(not-so-simple request)

简单请求

  • 简单请求(需要同时满足以下两大条件)
    • 请求方法是以下三种方法之一
      • HEAD
      • GET
      • POST
    • HTTP的头信息不超出以下几种字段:
      • Accept
      • Accept-Language
      • Content-Language
      • Last-Event-ID
      • Content-Type:只限于三个值application/x-www-form-urlencodedmultipart/form-datatext/plain

非简单请求

  • 非简单请求(凡是不是简单请求的,就是非简单请求)
  • 非简单请求是那种对服务器有特殊要求的请求,比如请求方法是PUT或者DELETE,或者content-typeapplication/json
  • 非简单请求会在正式通信之前,增加一次HTTP的查询请求,称为 “预检”请求(preflight) 。浏览器先询问服务器,当前网页所在的域名是否在服务器的许可名单之中,以及可以使用哪些HTTP动词和头信息字段。只有得到肯定答复,浏览器才会发出正式的XMLHttpRequest请求,否则就报错。

预检请求OPTIONS

  • 预检请求用的请求方法是OPTIONS,表示这个请求是用来询问的,头信息里面关键字段是 origin,表示请求来自哪个源。

  • 预检请求请求头信息包括两个特殊字段:

    字段含义
    Access-Control-Request-Method用来列出浏览器的CORS请求会用到哪些HTTP方法
    Access-Control-Request-Headers制定浏览器CORS请求会额外发送的头信息字段(逗号分割开)
  • 一旦服务器通过了预检请求,以后每次浏览器正常的CORS请求和简单请求一样,会有一个origin头信息字段(浏览器自动添加的)。

http://www.lryc.cn/news/7246.html

相关文章:

  • 引入短信服务发送手机验证码进行安全校验
  • opencv绘制直线
  • Seata源码学习(五)- Seata服务端(TC)源码解读
  • 低版本jQuery导致XSS Nuclei FUZZ POC
  • 【Linux】进程的描述组织与进程状态
  • 8.2.1.1 WHERE 子句优化
  • 拆个微波炉,分析一下电路
  • DM8:DMDSC共享存储集群搭建-共享存储绑定
  • Spark OOM问题常见解决方式
  • 【Calcite源码学习】ImmutableBitSet介绍
  • RabbitMQ相关概念介绍
  • 在jenkins容器内部使用docker
  • 分布式事务解决方案
  • 2022黑马Redis跟学笔记.实战篇(三)
  • hadoop环境新手安装教程
  • 数据结构与算法基础-学习-11-线性表之链栈的初始化、判断非空、压栈、获取栈长度、弹栈、获取栈顶元素
  • Hive内置函数
  • Git如何快速入门
  • netcore构建webservice以及调用的完整流程
  • Mysql事务基础(解析)
  • 2023 年首轮土地销售活动来了 与 The Sandbox 一起体验「体素狂热」!
  • vue AntD中栅格布局的四种大小xs,sm,md,lg
  • window.open()打开窗口全屏
  • VFIO软件依赖——VFIO协议
  • C/C++【内存管理】
  • 第8篇:Java编程语言的8大优势
  • STM32定时器实现红外接收与解码
  • 18- Adaboost梯度提升树 (集成算法) (算法)
  • zlink 介绍
  • C++之std::string的resize与reverse