今天在项目调试中,需要在拦截器里获取前端请求头里的token,结果死活获取不到。debug了半天发现前端一共发送了两次请求,真正的请求的第二次。

OPTIONS请求

OPTIONS请求方法的主要用途有两个:

1、获取服务器支持的HTTP请求方法;也是黑客经常使用的方法。

2、用来检查服务器的性能。例如:AJAX进行跨域请求时的预检,需要向另外一个域名的资源发送一个HTTP OPTIONS请求头,用以判断实际发送的请求是否安全。

总之,OPTIONS请求相当于一个检测目标是否安全的操作,类似于心跳机制。所以我们在后台拦截器里面应该把这个请求过滤掉。

1
2
3
4
5
6
7
8
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
    
    if("OPTIONS".equals(httpRequest.getMethod())){
           filterChain.doFilter(httpRequest, httpResponse);
           return;
       }

}
如上,如果检测到请求方法是options,则直接通过,接下来会得到真正的请求。
--------------------- 
作者:javafanwk 
来源:CSDN 
原文:https://blog.csdn.net/fwk19840301/article/details/80675477 
版权声明:本文为博主原创文章,转载请附上博文链接!

前端OPTIONS请求相关推荐

  1. 前端面试之 options 请求详解

    概述 options 请求就是预检请求,可用于检测服务器允许的 http 方法.当发起跨域请求时,由于安全原因,触发一定条件时浏览器会在正式请求之前自动先发起 OPTIONS 请求,即 CORS 预检 ...

  2. corspost请求失败_vue项目CORS跨域请求500错误,post请求变options请求

    vue项目CORS跨域请求500,post请求变options请求,到底是什么情况. 提示:以下内容是一个非专业开发的我对跨域的理解,并不10分准确. 一.先介绍为什么明明发送的是Post请求,为什么 ...

  3. ios 请求头设置token_HTTP中的OPTIONS请求

    前言 http请求之前已经接触了很多,但是这个options请求我还是第一次,刚来到公司的时候进行调试,发现NetWork里,每个请求在发出之前都会先发送一个options请求,第二个才是正常的请求. ...

  4. SpringBoot+Shiro放行OPTIONS请求,解决跨域问题

    问题: 集成shiro之后发现配置放行的接口可以正常访问,而需要登录验证的接口会报错 其中OPTIONS类型的接口会报302 导致后续的post请求报错提示跨域问题 Shiro登录流程 首先Shiro ...

  5. 关于浏览器预检(OPTIONS)请求

    浏览器在什么情况下会发起options预检请求? 在非简单请求且跨域的情况下,浏览器会发起options预检请求. 关于简单请求和复杂请求: 1 简单请求 简单请求需满足以下两个条件 请求方法是以下三 ...

  6. 因跨域,post请求变options请求(vue)

    1.options是什么? options在此问题中属于第二种,当涉及到跨域时,并且是post请求时,本地服务器会先发送一个options请求到服务器,如果服务器认为options请求时无危险性且认可 ...

  7. 为什么会有OPTIONS请求

    Options 请求,我所了解的就是在发起跨域的非简单请求时,会先发起一个 options 预检请求(浏览器是自动发起的),去检测目标服务器是支持跨域请求. 什么是 Options 请求? 获取服务器 ...

  8. 跨域和options请求

    前后端分离的项目中,前端和后端单独部署,使用不同的域名,前端代码在浏览器端访问后端的时候就会有跨域问题. 之前帮前端调试活动页面的时候,chrome调试工具上总是看到一个请求会重复发两次,后端加了锁, ...

  9. Charles通过Rewrite越过OPTIONS请求拦截

    前言 身为一个前端小菜鸟,总是有一个飞高飞远的梦想,因此,每点小成长,我都想要让它变得更有意义,为了自己,也为了更多值得的人 开开心心学技术大法~~ 来了来了,他真的来了~ 正文 场景 经常移动端开发 ...

最新文章

  1. 洛谷 1541 乌龟棋
  2. Spring Security 匿名认证
  3. LEETCODE- The First Day (C++)
  4. 第13讲nbsp;日期和时间nbsp;EXCEL2010…
  5. 量化指标公式源码_通达信指标公式源码线上阴线指标公式
  6. 安装配置树莓派的最佳工具——NOOBS
  7. TCP通信过程大讨论
  8. SpringCloud微服务:基于Nacos组件,整合Dubbo框架
  9. java循环输出_Java实现excel导出(内容循环多个)
  10. Snabbdom(虚拟dom-4-init函数)
  11. WebService 简单安全验证
  12. AI 看脸算命,3 万张自拍揭露:颜值即命?
  13. matlab 钻石绘制,用MATLAB代码模拟大雕和钻石人单挑
  14. java黄历_黄历查询API免费接口,黄历查询API接口付费定制-进制数据
  15. opencv 图像平滑、图像模糊函数的使用
  16. python 给定n,返回n以内的斐波那契数列
  17. vmware vsphere出现“需要整合虚拟机磁盘”的告警处理方法(完整版)
  18. Linux内核memcpy的不同实现
  19. hadoop配置HA详细教程
  20. 小米pro gtx右下角存在图标显示不全

热门文章

  1. STM32系列单片机标准库移植FreeRTOS V10.4.6详解
  2. 可观测可回溯 | Continuous Profiling 实践解析
  3. 【跟读书导师高鸿鹏学读书】-07如何赚到人生的第一桶金(上)
  4. Unity 移动端禁止多点触摸,禁止多点操作
  5. GBC律所代理品牌侵权案2021合集,赶紧查看哪些品牌不能碰
  6. XStream解析XML
  7. 4K分辨率+六自由度双手操控:全新升级的VR娱乐体验
  8. 2020 年新基建七大领域 数据“新基建”
  9. shell自动获取一级目录和二级目录
  10. 微信附近推广告投放效果如何?