`
hiuman
  • 浏览: 52502 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

有关cookie的内容

阅读更多
包括:
Cookie概述(Cookie的存放,有效期和作用域)
Cookie操作(保存Cookie,读取Cookie,Cookie的生命周期)
Cookie工作原理(Cookie与会话跟踪,Cookie安全性)

Cookie概述:
    Cookie是由服务器生成并存储在客户端文件系统(.txt格式)中的key/value对。当浏览器再次请求该站点上的页面时,就会自动把保存的Cookie发回服务器。
    Cookie使得浏览器可以在访问同一个站点的不同请求间传递数据,让服务器程序识别不同的客户端。
    (cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。)
    典型应用:保存用户登录状态、跟踪用户行为、页面定制、保存购物车等需要保存全局变量的场合。
    PS:出于隐私保护的考虑,浏览器可以选择禁用Cookie,或者手动删除。

Cookie的存放:
    Cookie保存在客户端某个特定的目录下的一个.txt文本文件中,且不同站点的Cookie数据保存不同的文件中。
    Cookie数据一般都是加密后保存的。

有效期和作用域:

    有效期:Cookie可以指定一个expires值,定义其生存周期,在这个周期内Cookie有效,超出周期Cookie就会被清除。有些页面将Cookie的生命周期设置为“0”或负值,这样在关闭浏览器时,就马上清除Cookie,不会记录用户信息,更加安全。
    作用域:默认情况下,某个站点保存的Cookie只能自己访问,不能被其他站点使用。但可以设置Cookie的domain和path值,限定在哪个域名下的哪个路径可以访问此Cookie。
    PS:“广告联盟”是个亟待规范的问题。

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = Cookie操作

保存Cookie:

    Cookie可以由服务器程序(如Java、PHP等)创建并发送给客户端保存;也可以由客户端JavaScript脚本创建并保存。

    //保存一个简单的Cookie
    document.cookie='uname=tom';
    //保存一个内容复杂的Cookie
    document.cookie='msg='+encodeURIComponent('Hi,JS 你好');
    //保存一个具有指定超时时间的Cookie
    document.cookie='uid=7788;expires='+new Date().toGMTString();

    上述三行语句可以创建并保存三个Cookie,而不是只有一个!
    PS:Cookie键值中不能包含分号,逗号,等号,空格,同时为了防止中文乱码问题,键值应该使用encodeURIComponent()函数进行编码。


读取Cookie:

    可以使用document.cookie获取当前站点可以读取的所有Cookie(多个Cookie间用;分隔)

    var cookies = document.cookie;
    console.log(cookies)  //多个Cookie用;分割
    var arr = cookies.split(';');
    for(var i = 0;i<arr.length;i++){
        var cookie = arr[i];  //键值对用=分割
        var cookiePair = cookie.split('=');
        console.log(cookiePair[0]+'='+cookiePair[1];
    }

   PS:注意cookie键名中可能会被浏览器添加了空白字符,需要trim()操作。

Cookie的生命周期:
    若没有指定expires属性,创建的Cookie其实只是保存在内存中,浏览器已关闭也就被销毁了。
    可以在保存Cookie时使用expires指定其生存周期。

    document.cookie='uid=7788';
    var time = new Date().getTime() + 1000*3600*24*30;
    var exp = new Date(time);
    document.cookie='uname=tom;expires='+exp.toGMTString();

   PS:同理,可以把expires设置为一个过去的时间,就可以实现删除Cookie的效果。


= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = Cookie工作原理

Cookie工作原理:
    Cookie是识别用户,实现状态保持的最佳方式之一。具体分为如下两种类型:
        会话Cookie:保存在客户端内存中,关闭即删除。
        持久Cookie:保存在客户端文件系统中,可长久使用。
   
    客户端发送请求给服务器端,服务器端响应给客户端。

Cookie与会话跟踪:

    当客户端在当前web站点的多个页面间进行访问时,可以使用Cookie对该会话过程进行跟踪记录——购物车。

Cookie安全性:
    浏览器不会把A站点的Cookie回传给B站点,且Cookie中的敏感数据一般都是加密保存的,所以Cookie技术本身并没有太大的安全问题。
    但是,若客户端被木马病毒控制,Cookie可能被黑客盗取并骗取服务器的信任。
    广告联盟的存在,导致Cookie被滥用,侵犯了用户的个人隐私。
分享到:
评论

相关推荐

    根据http获取cookie内容代码

    本文将深入探讨如何根据HTTP获取cookie内容,主要针对C++编程环境,以VS2019为例,同时结合提供的示例代码进行解析。 首先,我们来理解HTTP协议的基本概念。HTTP(超文本传输协议)是一种应用层协议,用于从Web...

    EditThisCookie.crx cookie编辑导入导出利器

    在互联网浏览中,Cookie扮演着重要的角色,它们存储用户信息、保持登录状态、个性化网页内容等。EditThisCookie.crx是一款专为Chrome浏览器设计的强大Cookie编辑器,它允许用户方便地查看、编辑、导入和导出网站...

    FlashCookie 不被浏览器清除的Cookie

    在Web开发中,Cookie通常用于跟踪用户会话、存储用户偏好或者个性化网站内容。然而,由于浏览器的隐私设置,用户可以轻易删除这些Cookie,从而限制了网站对用户行为的追踪。为了解决这个问题,Flash开发者引入了...

    browser-cookie 获取浏览器cookie

    `browser-cookie3` 是一个用于Python 3的库,能够帮助用户将当前浏览器中的cookies提取出来,并存储到一个`cookiejar`对象中,从而实现无需登录即可通过Python脚本获取与浏览器相同的网页内容。这个工具是基于...

    cookie分析工具

    3. **Cookie作用**:Cookie主要用于身份验证、跟踪用户行为、保持会话状态、个性化网站内容等。 **IECookiesView v1.73功能详解** 1. **查看Cookie**:该工具能列出所有IE浏览器中的Cookie,包括Cookie名称、值、...

    20210820cookie万能获取助手.rar

    通过“dist”目录下的内容,用户可以安装并运行该工具,从而便捷地获取和管理他们需要的Cookie。在使用过程中,用户可能需要了解Cookie的基本原理、安全风险以及相关法律法规,确保合法合规地使用该工具。同时,对于...

    cookie

    标题中的“cookie”一词指的是Web...以上是关于Cookie技术的基本介绍,具体实现细节和使用技巧可能需要参考原文档或“cookie.jsp”文件的内容。对于开发者来说,理解和熟练使用Cookie是构建高效、安全的Web应用的基础。

    Cookie,Cookie的使用

    后来人们就发明了Cookie技术,当用户访问网页时,它能够在访问者的机器上创立一个文件,我们把它叫作Cookie,写一段内容进去,来标识不同的用户。如果下次用户再访问这个网页的时候,它又能够读出这个文件里面的内容...

    QT访问网页获取Cookie

    然后,我们可以调用其get()或post()方法发起HTTP GET或POST请求,以获取网页内容。在请求中,我们可以设置必要的头部信息,如Cookie。例如,如果要访问一个需要登录的页面,我们可以先手动设置Cookie: ```cpp QUrl...

    有关网站cookie的用法

    网站Cookie是Web应用程序在用户浏览器上存储数据的一种方式,它对于网站功能的个性化、用户跟踪以及会话管理等至关重要。本文将深入探讨如何添加、修改和删除Cookie,以实现更有效的用户交互和网站管理。 首先,...

    Java 模拟cookie登陆简单操作示例

    // 读取响应内容 InputStream urlStream = otherConnection.getInputStream(); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(urlStream)); String content = null; ...

    用Cookie实现web网站的浏览过的内容,通俗易懂

    1. **请求头Cookie**:当用户再次发起请求时,浏览器会在请求头中包含所有相关的Cookie,服务器可以通过解析请求头中的Cookie来获取这些信息。 2. **JavaScript操作**:在前端,我们还可以通过JavaScript的`...

    Extjs 关于 cookie的操作

    在给定的部分内容中,通过 `cookieSetForm` 函数实现了从 Cookie 中读取数据并填充到表单中的功能。具体步骤如下: 1. **读取 Cookie 中的数据**:使用 `cookie.get(saveCookieId)` 方法获取指定名称的 Cookie 数据...

    cookie产生与认证

    - 内容:Cookie不应包含敏感信息,如密码明文。通常,服务器只存储一个哈希值或者会话ID,而实际的敏感数据存储在服务器端。 - 安全属性:可以设置Cookie的Secure属性,确保它只能通过HTTPS传输,防止中间人攻击。 -...

    Cookie简介及JSP处理Cookie的方法

    4. **个性化服务**:通过读取用户Cookies中的信息,网站可以提供定制化的服务,如推荐用户可能感兴趣的内容。 #### 三、JSP中如何创建和处理Cookie 在Java Server Pages(JSP)环境中,创建和处理Cookie也非常便捷...

    jquery cookie 实例下载

    这个实例中提供的下载内容可能就包含了`jQuery.cookie.js`这样的插件文件。 1. **设置Cookie**: 要设置一个Cookie,我们可以使用`jQuery.cookie()`方法。基本语法如下: ```javascript $.cookie('the_cookie', ...

    Session Cookie的HttpOnly和secure属性

    一、属性说明: 1 secure属性 ...也就是说两个属性,并不能解决cookie在本机出现的信息泄漏的问题(FireFox的插件FireBug能直接看到cookie的相关信息)。 二、实例 项目架构环境:jsp+servlet+applet

    C#获取本地Cookie

    可以随意获取本地存储的Cookie,这是获取IE的Cookie,要想获取其他浏览器Cookie,需要将里面的工具类的路径改一改,注释已写好,适用Win7以上,通过获取本地Cookie文件内容进行转换成Cookie,没有调用第三方dll,...

    Cookie在线注入工具

    1. **Cookie解析**:工具能够解析和显示从目标网站获取的Cookie内容,便于分析和篡改。 2. **数据构造**:允许攻击者输入自定义的Cookie值,或者使用内置的模板来创建潜在的恶意数据。 3. **注入测试**:自动将修改...

    asp.net Cookie的应用于购物车

    在购物车应用中,Cookie通常用于跟踪用户的购物选择,即便用户在浏览过程中从一个页面跳转到另一个页面,购物车的内容也能保持一致。下面将详细介绍Cookie在购物车中的应用以及与GridView控件的结合使用。 1. **...

Global site tag (gtag.js) - Google Analytics