node.js下操作cookie
cookie,又是cookie。工作中与cookie打交道很多次,不过时间跨度也大,每总结多一次,就加深了解多一点。
cookie,一定是放在浏览器中的,用于浏览器保存一些小额度的内容。每次我们去访问服务器的时候,cookie都会附着在请求报文中,一起发送给服务器。服务器中没有cookie,它只是操作浏览器发送过来的cookie而已。也因为如此,我们在服务器端的代码中处理cookie的时候,比如变更某个cookie的值,其实这个更改对于浏览器而言,还没有生效,一定要返回到浏览器中,才会将这个更改真正实施。当然,在服务器端中,跟更改一个其他变量,比如session,没有什么两样,改了就是改了。
注意:每次我们去访问服务器的时候,cookie都会附着在请求报文中,一起发送给服务器,但并不是所有的cookie都会发送,而是将当前访问的网站,相同顶级域名下的cookie随同发送。好比说,我浏览器访问过百度和网易,那么这两个站点都有cookie。当我访问百度的时候,浏览器就只发送百度的cookie;访问网易,就只发送网易的cookie。如果访问百度的时候,想访问网易的cookie,那叫跨域请求,好像比较困难。
更多的情况下,是子域名访问父域名、顶级域名的cookie。好比说,baidu.com是顶级域名,www.baidu.com、news.baidu.com都是二级域名,http://guonei.news.baidu.com/是三级域名,……,如此类推。那么,顶级域名的cookie,二级、三级、子孙级等都能访问。反过来,子孙的域名是否能被父辈级域名访问,好像也可以,具体不记得了。
总之,cookie有一个域。
相同域名且同等级域名下,可以直接操作,无须指明域,node.js下也是如此:
response.cookie('logFlag', 'out');
但如果这个cookie是父级的,那么就要指明域,否则更改不了(但似乎可以直接读取):
response.cookie('logFlag', 'out',{domain:'.baidu.com'});
第3个参数是个json,除了指明域名,还可以指明过期时间,路径,等等,看需要。
现在的浏览器,可以看到这个cookie。比如我用chrome打开某个网站,然后按F12,然后选NetWork标签,左边列表点开cookie,情况会一目了然,很是好用。
node.js下操作cookie的更多相关文章
- node.js高效操作mongodb
node.js高效操作mongodb Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为Jav ...
- Node.js之操作文件系统(一)
Node.js之操作文件系统(一) 1. 同步方法与异步方法 在Node.js中,使用fs模块来实现所有有关文件及目录的创建.写入及删除操作.,在fs模块中,所有对文件及目录的操作都可以使用同步与异步 ...
- Node.js之操作文件系统(二)
Node.js之操作文件系统(二) 1.创建与读取目录 1.1 创建目录 在fs模块中,可以使用mkdir方法创建目录,该方法的使用方法如下: fs.mkdir(path,[mode],callbca ...
- 在Node.js中操作文件系统(一)
在Node.js中操作文件系统 在Node.js中,使用fs模块来实现所有有关文件及目录的创建,写入及删除操作.在fs模块中,所有对文件及目录的操作都可以使用同步与异步这两种方法.比如在执行读文件操作 ...
- js简单操作Cookie
贴一段js简单操作Cookie的代码: //获取指定名称的cookie的值 function getCookie(objName) { var arrStr = document.cookie.spl ...
- node.js 下依赖Express 实现post 4种方式提交参数
上面这个图好有意思啊,哈哈, v8威武啊.... 在2014年的最后一天和大家分享关于node.js 如何提交4种格式的post数据. 上上一篇说到了关于http协议里定义的4种常见数据的post方法 ...
- npm 是node.js下带的一个包管理工具
npm 是node.js下带的一个包管理工具 npm install -g webpack webpack是一个打包工具 gulp是一个基于流的构建工具,相对其他构件工具来说,更简洁 ...
- Node.js文件操作二
前面的博客 Node.js文件操作一中主要是对文件的读写操作,其实还有文件这块还有一些其他操作. 一.验证文件path是否正确(系统是如下定义的) fs.exists = function(path, ...
- mongoose - 让node.js高效操作mongodb
Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为JavaScript对象以供你在应用中使用. ...
随机推荐
- (转)Hibernate框架基础——映射普通属性
http://blog.csdn.net/yerenyuan_pku/article/details/52739871 持久化对象与OID 对持久化对象的要求 提供一个无参的构造器.使Hibernat ...
- 使用python获得N个区分度较高的RGB颜色值
获得任意N个区分度最高的RGB颜色值是一个经典的问题,之前在做一些可视化的东西时需要解决这个问题.首先去网上找了一些方法,未果,于是想自己来搞,心里的想法是,先给出一个距离函数用来度量两个RGB颜色值 ...
- TCP端口状态LISTENING ESTABLISHED CLOSE_WAIT TIME_WAIT SYN_SENT
TCP状态转移要点 TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不 会被释放.网络服务器程序要同时管理 ...
- N18_二叉树的镜像
题目描述 操作给定的二叉树,将其变换为源二叉树的镜像. 输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ ...
- ThinkPHP---辅助方法
[三]Tp常见的辅助方法 原生SQL语句里除了目前所使用的基本操作增删改查,还有类似于group.where.order.limit等这样的字句. ThinkPHP封装了相应的子句方法:封装的方法都在 ...
- ssh多主机
#node1 HOST node1 HostName 10.10.10.10 Port 21 User ubuntu UseKeychain yes AddKeysToAgent yes #node2 ...
- 【maven】Description Resource Path Location Type An error occurred while filtering resources TESTVIDEO line
在maven中构建项目的时候发现了如下错误: Description Resource Path Location Type An error occurred while filtering res ...
- SQL删除重复数据(根据多个字段),pandas的nan存入数据库报错
delete from M_FACTOR_DATA_TEST a where (a.factor_id,a.data_date,a.stock_code) in (select factor_id,d ...
- JavaScript ES6 数组新方法 学习随笔
JavaScript ES6 数组新方法 学习随笔 新建数组 var arr = [1, 2, 2, 3, 4] includes 方法 includes 查找数组有无该参数 有返回true var ...
- JAVA实现创建Excel表并导出(转发)
<span style="font-family:Verdana, Arial, Helvetica, sans-serif;line-height:25.2px;background ...