在服务器端判断request来自Ajax请求(异步)还是传统请求(同步):

  两种请求在请求的Header不同,Ajax 异步请求比传统的同步请求多了一个头参数

  1、传统同步请求参数

    accept  text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    accept-charset  gb2312,utf-8;q=0.7,*;q=0.7
    accept-encoding  gzip,deflate
    accept-language  zh-cn,zh;q=0.5
    cache-control  max-age=0
    connection  keep-alive
    cookie  JSESSIONID=1A3BED3F593EA9747C9FDA16D309AF6B
    host  192.168.101.72:8080
    keep-alive  300
    referer  XXX

    user-agent  Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.15) Gecko/2009101601 Firefox/3.0.15 (.NET CLR 3.5.30729)

  2、Ajax 异步请求方式

    accept  */*
    accept-language  zh-cn
    referer  xxx

    x-requested-with  XMLHttpRequest  //表明是AJax异步
    content-type  application/x-www-form-urlencoded,text/javascript
    accept-encoding  gzip, deflate
    user-agent  Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; QQDownload 598; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; CIBA; .NET CLR 1.1.4322; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.1)
    host  192.168.101.72:8080
    content-length  233
    connection  Keep-Alive
    cache-control  no-cache
    cookie  CSS=undefined; JSESSIONID=1B9AC25036290F7FB6823CCE1A24E541

  可以看到 Ajax 请求多了个 x-requested-with ,可以利用它,request.getHeader("x-requested-with"); 为 null,则为传统同步请求,为 XMLHttpRequest,则为 Ajax 异步请求。

x-requested-with 请求头 区分ajax请求还是普通请求相关推荐

  1. 关于 x-requested-with 请求头 区分ajax请求还是普通请求

    今天做Spring MVC异常统一处理这块,在处理的时候需要区分发送过来的请求是传统请求还是ajax请求,网上有现成的代码,我是参考http://www.2cto.com/kf/201412/3643 ...

  2. x-requested-with 请求头 区分ajax请求还是普通请求

    在服务器端判断request来自Ajax请求(异步)还是传统请求(同步): 两种请求在请求的Header不同,Ajax 异步请求比传统的同步请求多了一个头参数 1.传统同步请求参数 accept  t ...

  3. 爬虫实战学习笔记_6 网络请求request模块:基本请求方式+设置请求头+获取cookies+模拟登陆+会话请求+验证请求+上传文件+超时异常

    1 requests requests是Python中实现HTTP请求的一种方式,requests是第三方模块,该模块在实现HTTP请求时要比urlib.urllib3模块简化很多,操作更加人性化. ...

  4. python 请求头_Python爬虫:将headers请求头字符串转为字典

    第一种方法 如上图所示,然后复制粘贴到pycharm里,存放到字典里 然后使用ctrl+r快捷键打开替换功能,并勾选Regex 替换源为:(.?): (.?)$ 替换为:"$1": ...

  5. ajax请求,请求头是provisional are shown。请求未发送出去

    问题: ajax请求,请求没成功.ajax请求没有发送出去. 查看network,看到请求头处:Provisional headers are shown. 原因: 搜索了一下,网上说了几个原因. 1 ...

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

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

  7. ajax 跨域请求数据,JQuery Ajax执行跨域请求数据的解决方案

    JQuery Ajax执行跨域请求数据的解决方案 今天前端因为需要ajax调用两个不同的项目,请求域不一样,所以涉及ajax跨域的问题 ,其实很简单,具体如下 原来的ajax请求如下: $.ajax( ...

  8. vue拦截器设置请求头失败,laravel设置前端请求头跨域

    前端同事在vue的request里面的拦截器中设置请求头,发现'Authorization'可以正常添加到请求头,可以正常访问,但是添加其他的如'browserVersion'参数就不行, 会出现Re ...

  9. 请求消息详解(请求头、get、post、请求体)

    简述 我们在servlet的service方法中有两个参数,分别是ServletRequest和ServletResponse,如果想掌握这两个参数,我们必须对请求消息和响应消息有个深入的理解. 请求 ...

最新文章

  1. Linux BSP非标准HDMI分辨率
  2. tomcat cpu占用过高,系统负载高问题跟踪
  3. JavaScript练习笔记
  4. sqlserver 查询中文查询不到 查询英文可以查到_估值数据和财报数据查询方法
  5. Java中的关键字this_super
  6. java虚拟机规范阅读(三)异常
  7. 矩阵求导最简单的理解
  8. 快速开发基于 HTML5 网络拓扑图应用--入门篇(一)
  9. 和平之翼代码生成器 SMEU 版 4.0.0 RC 宝船候选版发布
  10. 一个女算法程序媛的日常
  11. 管理新语:会议与问题的关系
  12. UEditor 百度Web编辑器 - JSP版本的使用
  13. 选择排序的时间复杂度
  14. Internet Explorer 无法打开搜索页完美解决办法
  15. 使用RF测试时,如何自动关闭浏览器驱动进程
  16. java 刽子手游戏_Java刽子手游戏重绘()无法正常工作
  17. 十大免费PHP编辑器-开发工具
  18. steam怎么设置邮箱令牌_steam收不到邮箱令牌验证码怎么办 这些知识你不一定知道...
  19. websocket ws + wss 通信
  20. 请求示例curl获取电商商品详情数据API接口,批量采集

热门文章

  1. linux df和du常用命令
  2. python数字排列组合去重_排列组合-生成集合的所有子集
  3. sift算法_单应性Homograph估计:从传统算法到深度学习
  4. 移动互联网APP测试流程及测试点(转载) (二)
  5. 数据结构之顺序循环队列
  6. (数据库系统概论|王珊)第十一章并发控制-第一节:并发控制概述
  7. windbg命令集合
  8. cannot use a string pattern on a bytes-like object(bytes与str互转)
  9. Java关于周跨年的周数计算
  10. linux_安装jdk和mysql简单步骤记