req.xhr判断请求来自ajax还是普通请求;

若为ajax则是为true

这个属性是通过判断headers中的

x-requested-with的值来判断的

下面是来自ajax的请求:

 1   host: 'localhost:3000',
2 connection: 'keep-alive',
3 accept: '*/*',
'if-none-match': 'W/"b5-nK3C+n/aPR++6ICHo9ZKmQ"',
5 'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.8 Safari/537.36',
'x-requested-with': 'XMLHttpRequest',
referer: 'http://localhost:3000/',
8 'accept-encoding': 'gzip, deflate, sdch',
9 'accept-language': 'zh-CN,zh;q=0.8',
10 cookie: 'privatecloud_sid=s%3AXUaL1RJr1h2r6yb52djAwrK3TWaIL91V.iuM%2FJ5a0MgnJcBrBPBOqFVShhezZly%2BwxxZ2O2bIa%2Bg'

下面是普通求求:

 1   host: 'localhost:3000',
2 connection: 'keep-alive',
pragma: 'no-cache',
'cache-control': 'no-cache',
'upgrade-insecure-requests': '1',
6 'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.8 Safari/537.36',
7 accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
8 'accept-encoding': 'gzip, deflate, sdch',
9 'accept-language': 'zh-CN,zh;q=0.8',
10 cookie: 'privatecloud_sid=s%3AXUaL1RJr1h2r6yb52djAwrK3TWaIL91V.iuM%2FJ5a0MgnJcBrBPBOqFVShhezZly%2BwxxZ2O2bIa%2Bg'

以上是通过req.headers打印出来的;

红色为相同属性,其他为不同属性;可以根据这些属性来做判断;

req.xhr在express中的应用的更多相关文章

  1. express中的错误处理

    错误处理 定义错误处理中间件和定义其他中间件一样,除了需要 4 个参数,而不是 3 个,其格式如下 (err, req, res, next).例如: app.use(function(err, re ...

  2. express 中文文档

    express() 创建一个express应用程序 var express = require('express'); var app = express(); app.get('/', functi ...

  3. Node+Express中请求和响应对象

    在用 Express 构建 Web 服务器时,大部分工作都是从请求对象开始,到响应对象终止. url的组成: 协议协议确定如何传输请求.我们主要是处理 http 和 https.其他常见的协议还有 f ...

  4. 精华 对express中next函数的一些理解

        关于next主要从三点来进行说明: next的作用是什么? 我们应该在何时使用next? next的内部实现机制是什么? Next的作用 我们在定义express中间件函数的时候都会将第三个参 ...

  5. nodejs+express中设置登录拦截器

    在nodejs+express中,采用nodejs后端路由控制用户登录后,为了加强前端的安全性控制,阻止用户通过在浏览器地址栏中输入地址访问后台接口,在app.js中需要加入拦截器进行拦截: /*** ...

  6. Express ( MiddleWare/中间件 路由 在 Express 中使用模板引擎 常用API

    A fast, un-opinionated, minimalist web framework for Node.js applications. In general, prefer simply ...

  7. 在Express中安装XTemplate

    上一节讲了安装Express,并且生成了一个"microblog"的工程,我们的目标是在工程下安装XTemplate: 1.安装xtpl npm install xtpl xtem ...

  8. [转] 对express中next函数的一些理解

    最近公司在使用node做前后端分离,采用的web框架是express,所以对express框架进行了深入的了解,前段时间写了篇关于express路由的文章,但是在那篇文章中貌似少了一个很重要的内容,就 ...

  9. 理解express中的中间件

    express是轻量灵活的node.js Web应用框架”.它可以帮助你快速搭建web应用.express是一个自身功能极简,完全是由**路由**和**中间件**构成的一个web开发框架,本质上说,一 ...

随机推荐

  1. vi全局替换方法

    来自:http://blog.sina.com.cn/s/blog_736f1c59010136ry.html 1. 基本的替换 :s/vivian/sky/ 替换当前行第一个 vivian 为 sk ...

  2. Mysql ORM工具--MicrobeORM.Mysql开源咯

    MicrobeORM.Mysql 补充:为啥批批量比官方的ADO.NET还快,原因是这俩货 System.EnterpriseServices.dllSystem.EnterpriseServices ...

  3. linux之SQL语句简明教程---UPDATE DELETE FROM

    我们有时候可能会需要修改表格中的资料.在这个时候,我们就需要用到 UPDATE 指令.这个指令的语法是: UPDATE "表格名" SET "栏位1" = [新 ...

  4. 虚拟机使用PuTTY、SSH Secure Shell Client前的配置

    1 仅主机模式 2 检查子网IP 为192.168.154.0 3 进入虚拟机,检查IP地址 ip addr show 添加IP地址 ip addr add dev eno16777736 192.1 ...

  5. paip.navicat form mysql导入文本文件时CPU占用100%的解决

    paip.navicat form  mysql导入文本文件时CPU占用100%的解决 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:h ...

  6. google 推荐 android 像素统一使用dip,字体统一使用sp

    像素统一使用dip,字体统一使用sp

  7. and then set HOMEBREW_GITHUB_API_TOKEN.

    andyMacBook-Pro:~ andy$ brew search redis hiredis   redis homebrew/nginx/redis2-nginx-module Error: ...

  8. VIM 中 查看{}是否闭合,按%跳转到下个闭合

    VIM 中 查看{}是否闭合,按%跳转到下个闭合

  9. UVA 1001 Say Cheese

    题意: 一只母老鼠想要找到她的玩具,而玩具就丢在一个广阔的3维空间上某个点,而母老鼠在另一个点,她可以直接走到达玩具的位置,但是耗时是所走过的欧几里得距离*10s.还有一种方法,就是靠钻洞,洞是球形的 ...

  10. SQL Server中调用WebService的实例

    尊重原著作:本文转载自http://www.cnblogs.com/icycore/p/3532197.html 1.Ole Automation Procedures 服务器配置选项 当启用 OLE ...