http的无状态?

保持状态, 是指当程序关闭后重启, 上一次操作的历史还能继续, 保持的. 如word中的 "选项"设置. 如windows系统的设置等等. http的设计目的, 只是为了简单的 让客户端请求文件 服务器响应分发文件 而已. 彼此之间都不需要记住以往的历史. 就像 散客/游客 在 自动售货机/自由卖场 购买东西一样. 这一次和每一次的 购买/访问 行为都是独立的,互不相关的. 所以当 b访问s后, 下一次再访问s; 甚至在同一次访问中 的不同页面间跳转也是独立的, 彼此间的状态都不共享,不互知

为什么需要状态保持?

而web程序或有些应用中,需要在 下一次访问S ,或不同页面间 跳转时, (保持状态的概念:)知道以往的访问历史 或程序状态, 和交互信息. 这就需要 在B /S 间保持状态. 如统计访问次数, 判断用户是否登录等.

保持状态的理解例子?

如同 在咖啡店喝咖啡的会员制, 喝上5杯咖啡送一杯咖啡. 就要记录这一次和以往喝咖啡的记录.就需要保持状态. 三种方式: 店员记住每个顾客的消费记录,这是http协议自身实现; 顾客一张消费卡,卡上记有各次消费的情况, 这个是客户端 cookie 保持状态; 给顾客一张会员卡,上面只有一个记录号, 然后咖啡店的服务器上保存顾客消费情况, 当顾客进店消费时, 出示会员卡,根据卡号查询记录,决定消费情况. 这是服务器端 session 保持状态. 由于客户端消费卡, 可能被修改/仿造, 为了保证顾客信息/资金的安全, 通常采用服务器端保持状态. 也就是说, 重要信息的状态保持, 要采用session, 不要采用cookie.

session的设置set, 不叫设置, 叫做 "装逼的 注册".

session的存在形式? 是以服务器内存变量的形式存在的, 不是以文件的形式保存的. 保存在服务器的内存中,所以服务器进程一旦终止 或 机器重启,那么, server上的session 就不存在了.

session的创建和终止消亡?

不是客户端一连接服务器,就创建session, 而是要显式的调用 Session::set('username', $Think.post.name).

session的消亡也不是 "会话" 一结束就消亡, 而是: 显式的调用 Session::clear/destroy(); 或者session的静默 超过设置的session过期时间; 或者如上的进程终止或机器重启.

那么session的默认过期时间

  是空格, 也可以用 &#方式来表示,   注意要写上#, 否则会按原样输出 &12288;

cookie的最大尺寸, 大小限制: 3K?

cookie的保存?

cookie的设置包括名称, 过期时间, 域,路径. 域是整体 的范围, 如 .baidu.com , 路径是作用的具体范围,通常是一个子目录. 域和路径组合 表示cookie的作用范围. 过期时间, 如果没有设置,表示会话一结束cookie就失效, 称为"会话cookie".

cookie的使用方式?

cookie不需要用户 显式的去调用, 去引用. 它是放在 浏览器的目录中, 在访问服务器时, 浏览器会自动的 扫描检查 每一个 cookie, 然后将cookie 添加到 http请求头中, 一并发送给服务器. 然后由服务器去检查? if(Session::is_set('username')....

session的使用也需要cookie吗?

是的, session的使用,如同上面的咖啡厅会员卡一样, 顾客是持有 会员卡 卡号, 店里面根据会员卡号查询记录. 同样的, 服务器上有session 记录, 而session的标识, 即session id是保存在客户端, 的cookie中的. 浏览器访问服务器时, 会自动的将cookie中的 session id发给服务器, 然后检测.

对于多用户并发的session,难道不会重叠,覆盖吗?

正是因为上面的那个session id的原因.

盗用用户名发帖?

就是将你的机器上的cookie盗用,拷贝到它机器上的浏览器目录下, 因为浏览器会自动地发送cookie, 所以它上网时就是盗用你的身份了.


git tag 的操作包括: 创建/列表/删除/推送 标签

-a 创建, -l list, -d 删除标签. -m 加上创建标签时的备注信息

git show : 可以显示查看 任何类型的 对象. show various types of objects. git show Release-0.1

git tag是放在 .git/refs/tags/目录中的, 比如Release-0.1, 其实是一个 中的.

git tag -a 'Release-0.1' -m 'first tagger tagged'

git tag; git tag -l; git show Release-0.1(git show是直接查看各种git对象)

什么叫session和cookie-及其设置的更多相关文章

  1. flask设置cookie,设置session,模拟用户认证、模拟管理后台admin、模拟用户logout

    设置cookie HTTP协议是无状态的,在一次请求响应结束后,服务器不会留下关于客户端状态的信息.但是对于某些web程序来说,客户端的信息有必要被记住,比如用户的登录状态,这样就可以根据用户的状态来 ...

  2. Django中的session和cookie及分页设置

    cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...

  3. 理解Session与Cookie

    写在前面的话:Session和Cookie是非常有意思的两个概念,对于两者的管理可以处理的很复杂,但是无论如何,理解Session和Cookie的基本概念和发明初衷,对于问题的解决,大有裨益. === ...

  4. session和cookie的区别

    cookie机制和session机制的区别     具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案.     同时我们也看到,由于才服务器 ...

  5. 安全退出,清空Session或Cookie

    概览: 网站中点击退出,如果仅仅是重定向到登录/出页面,此时在浏览器地址栏中输入登录后的某个页面地址如主页,你会发现不用登录就能访问.这种所谓的退出并不是安全的. 那么怎样做到安全退出呢? 那就是点击 ...

  6. 关于session和cookie

    一.cookie机制和session机制的区别 **************************************************************************** ...

  7. 【荐】PHP Session和Cookie,Session阻塞,Session垃圾回收,Redis共享Session,不推荐Memcached保存Session

    什么是 Session 在 web 应用开发中,Session 被称为会话.主要被用于保存某个访问者的数据. 由于 HTTP 无状态的特点,服务端是不会记住客户端的,对服务端来说,每一个请求都是全新的 ...

  8. Session与Cookie概念

    摘:一.Session机制session是一种服务器端的状态管理技术,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息.当程序需要为某个客户端的请求创建一个session的时候,服务 ...

  9. session和cookie

    第一次听到cookie这个词的时候着实兴奋了一段时间,以为是小饼干呢~快喝一杯82年的java压压惊!哈哈~ 与cookie的第一次邂逅——清缓存和清cookie 刚毕业的时候上班,做二次开发,明明后 ...

随机推荐

  1. Linux Kernel 代码艺术——编译时断言

    本系列文章主要写我在阅读Linux内核过程中,关注的比较难以理解但又设计巧妙的代码片段(不关注OS的各个模块的设计思想,此部分我准备写在“深入理解Linux Kernel” 系列文章中),一来通过内核 ...

  2. 【2016-10-16】【坚持学习】【Day7】【建造者模式】

    建造者模式: 一个复杂的对象由多个分部件组成.一个复杂对象 class Product { private string partA; //定义部件,部件可以是任意类型,包括值类型和引用类型 priv ...

  3. 【Python数据分析】Python3操作Excel(二) 一些问题的解决与优化

    继上一篇[Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 对豆瓣图书Top250进行爬取以后,鉴于还有一些问题没有解决,所以进行了进一步的交流讨论,这期间得到了一只尼玛 ...

  4. java程序设计线程池(newCachedThreadPool())

    创建一个无界的可缓存的线程池,若线程长时间没用会自动销毁,直接上代码好了: import java.util.concurrent.ExecutorService; import java.util. ...

  5. list去从复

    for(int i=0;i<queryList.size();i++){//去重             String time =queryList.get(i);             i ...

  6. asp.net页面关闭的时候如何触发事件?

      <script type="text/javascript"> var pb_strConfirmCloseMessage; var pb_blnCloseWind ...

  7. 微信小程序之登录态维护(十一)

    [未经作者本人同意,请勿以任何形式转载] >什么是登录态? 所谓登录态,就是程序在运行时,能够识别当前用户,能够证明自己的唯一性且合法. 我们知道,WEB服务器通过浏览器携带的cookie获取s ...

  8. 文件上传---普通文件fileupload.jar和url文件httpUrlConnection

    文件上传---普通文件和url文件 主要用来学习使用common-fileupload.jar和java.net.httpURLConnection 普通文件: //上传xls文件到临时目录 if ( ...

  9. VS2012的调试插件Image Watch,opencv编程神器

    今天配置 opencv3.0 时无意中看到 Image Watch 这样一个VS2012的调试插件,适用了下,特别好用. 部分链接: Image Watch 的 下载链接 OpenCV关于ImageW ...

  10. Mysql查看执行计划-explain

    最近生产环境有一些查询较慢,需要优化,于是先进行业务确认查询条件是否可以优化,不行再进行sql优化,于是学习了下Mysql查看执行计划. 语法 explain <sql语句>  例如: e ...