为什么要使用会话技术

会话从字面上来说就是,就是两个人说话,也就是两个人交流,那么这里说的是计算机web端的交流,因为互联网是基于HTTP传输信息的,而http传输是无状态协议,缺少状态,意味着如果后续需要前面的内容,必须重传。也就是每一次连接都是独立的请求,这样就会给我们程序带来不便,比如我们要登陆一个网站购买商品时,是不是每次打开一个页面都需要登陆,答案是否定的,我可以给我的网址传一个参数,虽然这样能实现,但是没实质性作用,也不安全,任何人都可以登陆。这时就需要用到下面学到的技术Cookie 和 Session,主要用来实现用户登陆,跟踪用户等

Cookie

cookie 是一门浏览器技术,主要通过浏览器保存数据(主要保存在浏览器的某个文件中),因为cookie是以文件的形式保存在浏览器中,所以cookie也是区分浏览器的。因cookie是由服务器发送到浏览器的,所有保存在浏览器的数据,可以由服务器控制,保存什么、保存的状态等。每次浏览器发出请求时,都会携带cookie,意味着服务器每次都可以拿到cookie数据,每次请求间的cookie数据是共享的。这样就解决了我们的无状态问题,用setcookie() 来设置我们的cookie值

当你第一次设置cookie值的时候,首先服务器响应一个cookie值,在下一次请求时,如果存在cookie,它都会携带,所以当你第一次设置一个cookie的时候,他是不会携带的。

按自己的思路,简单的化了一个用cookie实现登陆的功能。删除cookie,可以让cookie时间过期,使用 setcookie('cookie名',time()-1);

Session

Session 技术与 Cookie 相似,都是用来储存用户信息的,最大不同是cookie是将数据存储在客户端电脑中,而session是把数据存在服务器系统下,不会被用户或者其他人操作,相比更安全。我们通过session_start() 开启会话,返回已经存在的会话。当设置一个session值时,将全部数据保存在服务器端,在客户端会保存由服务器为用户创建的一个Session标示符,成为Session ID,使用cookie技术保存Session ID
$_SESSION['name'] = "zhangsan";  删除名字为name值session:  unset($_SESSION["name"]) ,删除所有与Session $_SESSION = array(); session_destroy();
session 是基于cookie的,通常会有这样的面试题,禁用cookie 后session 能用么?答案 理论上是可以的,可以通过get传递 session ID,但是这样不够安全,现在所有的浏览器都不会禁止cookie,所以我们使用基于cookie的session就是可以的

Session 默认有效期是关闭浏览器,为什么session会消失,主要原因是浏览器端cookie内保存的 sessionID 失效了,因为session是基于cookie的,所以关闭浏览器会失效。

浏览器关闭,session是不会马上消失的。

如何延长session声明周期,解决方案:延长cookie 和 session 的生存时间

会话技术之Cookie 和 Session的更多相关文章

  1. JavaWeb学习之转发和重定向、会话技术:cookie、session、验证码实例、URLConnection使用(下载网页)(4)

    1.转发和重定向 HttpServletResponse response 转发: RequestDispatcher dispatcher = request.getRequestDispatche ...

  2. 会话技术( Cookie ,Session)

    会话技术:    会话:浏览器访问服务器端,发送多次请求,接受多次响应.直到有一方断开连接.会话结束.        解决问题:可以使用会话技术,在一次会话的多次请求之间共享数据.           ...

  3. JAVAWEB开发之JSP、EL、及会话技术(Cookie和Session)的使用详解

    Servlet的缺点 开发人员要十分熟悉JAVA 不利于页面调试和维护(修改,重新编译) 很难利用网页设计工具进行页面设计(HTML内容导入到servlet中,用PrintWriter的对象进行输出) ...

  4. 会话技术、Cookie技术与Session技术

    一.会话技术  1. 存储客户端状态 会话技术是帮助服务器记住客户端状态(区分客户端)的.  2. 会话技术 从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,称为一次会话.会话技术就是记录这 ...

  5. Java第三阶段学习(十三、会话技术、Cookie技术与Session技术)

    一.会话技术  1. 存储客户端状态 会话技术是帮助服务器记住客户端状态(区分客户端)的.  2. 会话技术 从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,称为一次会话.会话技术就是记录这 ...

  6. [转]【会话技术】Cookie技术

    建立时间:6.29 & 6.30 一.会话技术简介 1.存储客户端的状态 由一个问题引出今天的内容,例如网站的购物系统,用户将购买的商品信息存储到哪  里?因为Http协议是无状态的,也就是说 ...

  7. 会话技术之Cookie

    在无状态的客户端(未登录)下,张三想买手机然后把手机加入购物车,服务器发出添加成功的响应,然后把手机加入ServletContext域里,然后张三想在逛逛别的, 再无状态的客户端(未登录)下,李四想买 ...

  8. JSP基础--会话跟踪技术、cookie、session

    会话跟踪技术 1 什么是会话跟踪技术 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应.例如你给10086打个电话,你就是客户端,而10 ...

  9. java的会话管理:Cookie和Session

    java的会话管理:Cookie和Session 1.什么是会话 此处的是指客户端(浏览器)和服务端之间的数据传输.例如用户登录,购物车等 会话管理就是管理浏览器客户端和服务端之间会话过程产生的会话数 ...

随机推荐

  1. Yii modules中layout文件的调用

    在YII中,如果我们使用了modules区分了前后台,那么在不同的modules中需要使用各自的layout文件,在使用中发现经常会调用不到modules中的layout,下面介绍一下如何才能正确的调 ...

  2. 字符串匹配的KMP算法(转)

    转载:http://kb.cnblogs.com/page/176818/ 字符串匹配是计算机的基本任务之一. 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE&quo ...

  3. Unreachable catch block for IOException. This exception is never thrown from the try statement body

    Unreachable catch block for IOException. This exception is never thrown from the try statement body ...

  4. GIS大讲堂内所有讲座的索引(更新至2008年6月26日)(转)

    转自:http://www.cnblogs.com/xiexiaokui/archive/2008/11/20/1337934.html GIS大讲堂内所有讲座的索引(更新至2008年6月26日)   ...

  5. Selenium - WebDriver 小结(1)

    public class Base { SimpleDateFormat formatterTime = new SimpleDateFormat("yyyyMMdd_hhmmssa&quo ...

  6. 多用pip,少用easy_install。

    在此之前装python包,用过easy_install,也用过pip,但都是照猫画虎,在网上找命令完了装上就完事.现在稍微整理一下. easy_install: python开发有一个工具,setup ...

  7. 一个简单的DELPHI程序注册码设计 .

    当你辛辛苦苦用DELPHI做好了一个你认为十分不错的程序,你是否想把它发布出去成为共享软件呢  做为一个共享软件,注册码肯定是少不了的,你可以通过判断程序是否注册来进行功能,时间或一些其它限制.现在就 ...

  8. [LeetCode] Minimum Size Subarray Sum 解题思路

    Given an array of n positive integers and a positive integer s, find the minimal length of a subarra ...

  9. Installing Windows Identity Foundation on Windows 8 - The Certificate for the signer of the message is invalid or not found.

    Just a very quick note here, in case you’re struggling to get Windows Identity Foundation installed ...

  10. myeclipse building workspace如何禁止及提高myeclipse速度

    大家一定对building workspace时那缓慢的速度给困扰到了吧~ 其实只要把project选项里的 building automatically前的勾去掉,就可以快很多了.. 另外大家一定对 ...