`
fishyu0817
  • 浏览: 110163 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Session ID and Cookie

阅读更多
具体来说cookie机制采用的是在客户端保持状态的方案。它是在用户端的会话状态的存贮机制,他需要用户打开客户端的cookie支持。cookie的作用就是为了解决HTTP协议无状态的缺陷所作的努力.
session机制采用的是一种在客户端与服务器之间保持状态的解决方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的。而session提供了方便管理全局变量的方式
session是针对每一个用户的,变量的值保存在服务器上,用一个sessionID来区分是哪个用户session变量,这个值是通过用户的浏览器在访问的时候返回给服务器,当客户禁用cookie时,这个值也可能设置为由get来返回给服务器。
就安全性来说:当你访问一个使用session 的站点,同时在自己机子上建立一个cookie,建议在服务器端的SESSION机制更安全些.因为它不会任意读取客户存储的信息。

正统的cookie分发是通过扩展HTTP协议来实现的,服务器通过在HTTP的响应头中加上一行特殊的指示以提示浏览器按照指示生成相应的
cookie
从网络服务器观点看所有HTTP请求都独立于先前请求。就是说每一个HTTP响应完全依赖于相应请求中包含的信息
状态管理机制克服了HTTP的一些限制并允许网络客户端及服务器端维护请求间的关系。在这种关系维持的期间叫做会话(session)。
Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器。IETF RFC 2965 HTTP State Management Mechanism 是通用cookie规范。网络服务器用HTTP头向客户端发送cookies,在客户终端,浏览器解析这些cookies并将它们保存为一个本地文件,它会自动将同一服务器的任何请求缚上这些cookies
具体来说cookie机制采用的是在客户端保持状态的方案。它是在用户端的会话状态的存贮机制,他需要用户打开客户端的cookie支持。cookie的作用就是为了解决HTTP协议无状态的缺陷所作的努力.
session机制采用的是一种在客户端与服务器之间保持状态的解决方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的。而session提供了方便管理全局变量的方式
session是针对每一个用户的,变量的值保存在服务器上,用一个sessionID来区分是哪个用户session变量,这个值是通过用户的浏览器在访问的时候返回给服务器,当客户禁用cookie时,这个值也可能设置为由get来返回给服务器。
就安全性来说:当你访问一个使用session 的站点,同时在自己机子上建立一个cookie,建议在服务器端的SESSION机制更安全些.因为它不会任意读取客户存储的信息。

正统的cookie分发是通过扩展HTTP协议来实现的,服务器通过在HTTP的响应头中加上一行特殊的指示以提示浏览器按照指示生成相应的cookie
从网络服务器观点看所有HTTP请求都独立于先前请求。就是说每一个HTTP响应完全依赖于相应请求中包含的信息
状态管理机制克服了HTTP的一些限制并允许网络客户端及服务器端维护请求间的关系。在这种关系维持的期间叫做会话(session)。
Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器。IETF RFC 2965 HTTP State Management Mechanism 是通用cookie规范。网络服务器用HTTP头向客户端发送cookies,在客户终端,浏览器解析这些cookies并将它们保存为一个本地文件,它会自动将同一服务器的任何请求缚上这些cookies
JAVA:
   String sessionID = request.getSession().getId();
   Cookie cookie0 = new Cookie(Constant.cookieSessionId, sessionID);
   cookie0.setMaxAge(Constant.DURATION);
   Cookie cookie1 = new Cookie(Constant.cookieUserEmail, email);
   cookie1.setMaxAge(Constant.DURATION);
   response.addCookie(cookie0);
   response.addCookie(cookie1);
   // forward to JobmetWave
   RequestDispatcher disp = request.getRequestDispatcher("/JobmetWave.html");
   disp.forward(request, response);
JS在当前页面获取cookie值
function getCookie(name) {
    var presence = document.cookie.indexOf(name);
    if (presence != -1) {
        var start = presence + name.length + 1;
        var end = document.cookie.indexOf(";", start);
        if (end == -1) end = document.cookie.length;
        var value = document.cookie.slice(start, end);
        return unescape(value);
    } else return false;
}
0
0
分享到:
评论

相关推荐

    svelte-kit-cookie-session::hammer_and_pick:SvelteKit的加密“无状态” cookie会话

    这与express-session有所不同,在express-session中,cookie包含一个会话ID,然后将其用于在服务器端映射数据。 默认情况下,Cookie具有 :alarm_clock: 有效期为7天,可通过[ expires ]设置,以days number单位。 ...

    android实现session保持简要概述及实现

    其实sesion在浏览器和web服务器直接是通过一个叫做name为sessionid的cookie来传递的,所以只要在每次数据请求时保持sessionid是同一个不变就可以用到web的session了,做法是第一次数据请求时就获取sessionid的值并...

    android与asp.net服务端共享session的方法详解

    第一次数据请求时就获取这个cookie的名称并且得到这个cookie的值,这个即是sessionid的值并保存在一个静态变量中,然后在第二次请求数据的时候要将这个sessionid一并放在Cookie中发给服务器,服务器则是通过这个...

    ChromeDriver v2.24 for windows linux and mac (2016-09-09)

    Resolved issue 1229: Spec violation: /sessions endpoint returns session ID at `sessionId` key instead of `id` key [['OS-All', 'Pri-2']] ----------ChromeDriver v2.19 (2015-08-28)---------- Supports ...

    next-iron-session::hammer_and_wrench:Next.js无状态会话实用程序,使用签名和加密的cookie来存储数据

    这与不同,中,cookie包含一个会话ID,然后该会话ID可用于在服务器端映射数据。 在线演示,为 :eyes: 使用对印章进行签名和加密,在幕后使用 。 这种存储会话数据的方法与诸如类的框架所使用的技术相同。 :...

    Django Web框架的curl。 向django服务器发出经过身份验证的请求。-Golang开发

    Django身份验证依赖于两个cookie:csrftoken和sessionid。 一旦获得这些cookie,就可以为Django创建djangobot Curl。 向Django服务器发出经过身份验证的请求。 它是如何工作的 ? Django身份验证依赖于两个cookie:...

    fantiadl:从Fantia下载帖子和媒体

    usage: fantiadl.py [options] urlpositional arguments: url fanclub or post URLoptional arguments: -h, --help show this help message and exit -c SESSION_COOKIE, --cookie SESSION_COOKIE _session_id ...

    购物网站中的购物车源代码

    /* 检查是否有 seesion, 如果没有产生一个 MD5 的唯一 id, 并利用 cookie 存入 $s 中。 并且设置其存在时间为 14400 sec 也就是 4 小时 */ $mysql_link = mysql_connect("127.0.0.1", "root", "test"); if (!...

    php.ini-development

    and you cannot use both "ob_gzhandler" and "zlib.output_compression". ; Note: output_handler must be empty if this is set 'On' !!!! ; Instead you must use zlib.output_handler. ; ...

    ChromeDriver v2.23 for windows linux and mac (2016-08-04)

    Resolved issue 1229: Spec violation: /sessions endpoint returns session ID at `sessionId` key instead of `id` key [['OS-All', 'Pri-2']] ----------ChromeDriver v2.19 (2015-08-28)---------- Supports ...

    chromedriver_2.46.zip

    Resolved issue 755: /session/:sessionId/doubleclick only generates one set of mousedown/mouseup/click events [[Pri-2]] Resolved issue 2744: Execute Script returns wrong error code when JavaScript ...

    chromedriver.exe

    Resolved issue 755: /session/:sessionId/doubleclick only generates one set of mousedown/mouseup/click events [[Pri-2]] Resolved issue 2744: Execute Script returns wrong error code when JavaScript ...

    jboss中access 日志的配置

    %S - User session ID %t - Date and time, in Common Log Format %u - Remote user that was authenticated (if any), else '-' %U - Requested URL path %v - Local server name %D - Time taken to process...

    servlet2.4doc

    Encodes the specified URL by including the session ID in it, or, if encoding is not needed, returns the URL unchanged. -------------------------------------------------------------------------------...

    Cookieless.js.zip

     trackImpressionFor(visitor.id, visitor.session); //example   } });服务器端代码:var CookielessTracker = require('cookieless');   /* Note: it's not mandatory to start a beacon, you ...

    php_6_fast_and_easy_web_development.pdf

    Appendix DWriting Your Own Classes and Objects. . . . . . . . . . 495 Working with Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496 Creating an Object. . . . . . . . . . ...

    计算机网络第六版答案

    These well-established and time-honored rules have made it easier for nations and people to live and work together. Part of protocol has always been the acknowledgment of the hierarchical standing of...

    JLink_Windows_V648.zip

    DLL: Windows: Renesas RX: When using FINE interface and disabling ongoining debug mode on debug session close, it could happen that a thread was not exited gracefully, causing handle leaks. Fixed. DLL...

    PHP5 完整官方 中文教程

    id3 — ID3 Functions IIS Functions — IIS Administration Functions Image — Image 图像函数 Imagick Image Library IMAP — IMAP, POP3 and NNTP Functions Informix — Informix Functions Informix (PDO) — ...

    PHP5中文参考手册

    id3 — ID3 Functions IIS Functions — IIS Administration Functions Image — Image 图像函数 Imagick Image Library IMAP — IMAP, POP3 and NNTP Functions Informix — Informix Functions Informix (PDO) — ...

Global site tag (gtag.js) - Google Analytics