cookie会随着浏览器每次发起的请求(request)传给服务器进行读取,而服务器则会在应答(response)中携带cookie写在本机上。因此,cookie是存储在本地的。而且由于cookie的这种性质,cookie必须在赋值后的下一次请求中才能“生效”(不过,貌似立即生效也没啥作用……)。
     rails中的cookie使用起来相当简单,只需要按照所需使用cookies这个hash就可以了。例如:
# Sets a simple session cookie.
# This cookie will be deleted when the user's browser is closed.
 cookies[:user_name] = "david"
# Assign an array of values to a cookie.
cookies[:lat_lon] = [47.68, -122.37]

读取时也同样调用cookies相应的键值对即可。默认的,cookie将在30min后过期(或者随着关闭浏览器而过期)。
    当然也可以自行设定其过期日期(expires)
cookies[:login] = { :value => "XJ-122", :expires => 1.hour.from_now }
    其实cookies设定时出了:value :expires之外,还有一些其他参数:
:path 设定cookie有效的路径。没有验证过怎么使用,但是应该是指cookie在哪一层目录下有效吧,这样可以防止不同的controller之间的同名cookie。
:domain 设定cookie在哪些域名下有效。
:secure true/false,标识是否传递给https server。
:httponly 顾名思义吧

另外,还可以设定一些特殊的cookie
cookies.signed[:user_id] = current_user.id
signed cookie,防止用户篡改其值(没试过,不知道理解的对不对)
cookies.permanent[:login] = "XJ-122"
permanent cookie,有效期20年的cookie
    以上两种cookie还可以串联起来使用,构成signed permanent cookie
==============================================================

rails: 的cookie小结的更多相关文章

  1. ASP.NET-【状态管理】-Cookie小结

    Cookie路径 谷歌浏览器 依次点击设置--高级选项--内容设置--cookies--选择“显示cookies和其他网站数据”按钮就可以看到了 C:\Users\Administrator\Loca ...

  2. 【原】cookie小结

    前记:前段时间搞一个活动,开发的时间被严重压缩,忙到飞起,以致于都没怎么写文章了,内疚. 2月份参加了一场面试,有一些关于cookie的问题回答的不是很好,所以这篇文章我们来对cooKie做一个探讨和 ...

  3. cookie小结

    cookie的用处:当不同的用户访问同一家网站时(采用相同的请求地址),服务器如何区分不同用户的请求操作呢?需要浏览器对发出的每个请求进行标识.属于同一个会话的请求,都带有相同的标识,不同的会话带有不 ...

  4. cookie小结(转)

    原文地址:http://www.cnblogs.com/xianyulaodi/p/6476991.html#_label0 作者:咸鱼老弟   阅读目录 什么是cookie       官方定义:N ...

  5. 再好好聊聊 HTTP 里的 Cookie | 实用 HTTP

    题图:by Juan Pablo Arenas 一.序 Hi,大家好,我是承香墨影! HTTP 协议在网络知识中占据了重要的地位,HTTP 协议最基础的就是请求和响应的报文,而报文又是由报文头(Hea ...

  6. session和cookie知识点总结

    cookie小结:1.cookie是在服务端创建2.cooki是保存在浏览器这一端3.cookie的生命周期可以通过 cookie.setMaxAge(2000);(如果不设置生命周期,cookie的 ...

  7. cookie与session(略谈)

    cookie (储存在用户本地终端上的数据) Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密).定义 ...

  8. php cookie及session

    1.会话控制概括 1)http协议的缺陷 无状态,就是无记忆,不能让同一浏览器和服务器进行多次数据交换时,产生业务的连续性, 2)什么是会话控制 会话控制就是解决http无记忆缺陷的,能够==将数据持 ...

  9. servlet学习笔记三

    Servlet主要内容: 1)状态跟踪 一.状态跟踪 HTTP协议是无状态协议,即请求与请求之间没有任何关系,也就是不会记住任何数据. 但若想在请求间传递数据,怎么办?web里的三个基本容器对象可以解 ...

随机推荐

  1. Javascript、CSS和IMG之网页执行探索

    测试环境:windows/chrome 实例1:页面中仅有图片 <html xmlns="http://www.w3.org/1999/xhtml"> <head ...

  2. C#异常语句

    try: 用于检查发生的异常,并帮助发送任何可能的异常. catch: 以控制权更大的方式处理错误,可以有多个catch子句. finally :无论是否引发了异常,finally的代码块都将被执行. ...

  3. redis DB操作

    数据库操作 1)  REDIS是全部由KEY和VALUE值构成,对数据库的增删改查操作都是基于在通过key 映射到哈希槽 然后通过哈希槽进行单向链式遍历 查找到value和具体的key. 同样 在查看 ...

  4. 解决织梦DEDEcms指定arclist的特定ID排序的方法

    转载网址:http://blog.hrseo.net/xuexi/184.html 替换/include/taglib/arclist.lib.php这个文件,下载链接: http://pan.bai ...

  5. MCMC: The Metropolis-Hastings Sampler

    本文主要译自:MCMC:The Metropolis-Hastings Sampler 上一篇文章中,我们讨论了Metropolis 采样算法是如何利用马尔可夫链从一个复杂的,或未归一化的目标概率分布 ...

  6. Android Studio的简单设置:

    4.关闭更新: 如下图所示: 6.添加api文档悬浮提示: AS默认是没有api文档悬浮提示的,只有按住[Ctrl+Q]太会出现提示.如果要添加api的自动悬浮提示,设置如下: 上图中,在红框部分打钩 ...

  7. php用smtp发送邮件

    php用smtp发送邮件 1.其实用smtp协议发送邮件很简单,用框架或者原生都可以,我们需要用到class.phpmailer.php 和class.smtp.php,大家可以去网上下载. 这是一个 ...

  8. 用php脚本给html中引用的js和css路径打上版本

    比如 <link rel="stylesheet" type="text/css" href="./css/globel.css"&g ...

  9. XJOI‘s story (不定期连载)

    王城双基的力量.... 我也不知道写写这种东西会不会被查大表..尴尬  . 我为什么要写这东西: 为了蛤鸡 为了红太阳 xj 人物列传 2017   1,6   Friday 得到大新闻 机房后面的监 ...

  10. 替换节点及replaceEach方法

    需求: 为所有的 li 节点添加 onclick 响应函数实现 city 子节点和 game 子节点对应位置的元素的互换 window.onload = function(){ //自定义互换两个节点 ...