cookie原理入门概念介绍

工业组态软件Intouch(单机版)入门{第二篇} 第5步:*都装好之后,需要进行测试授权是否生效,测试1:能否正常运行项目和编辑项目(能否编辑项目,取决于你的授权是否包含开发功能,如果只是单一的runtime授权,则只能运行项目,不能编辑项目)。在线第3步:点击第一个框右边的按钮,弹出文件浏览窗口,选中你的XMl授权文件,打开,然后你的授权出现在下方的列表中,勾选你的授权,然后点击Activate,等待几秒,授权就会出现在管理器页面的列表中,并且Status会显示Activated。第1步:软件安装好之后,先要配置好授权服务器。等待几秒,激活完成。 阅读详情

[好资料收个藏,转自 http://eyesmore.javaeye.com/blog/332817]

cookie原理入门概念介绍

关键字: cookie

3. COOKIE FUNDAMENTALS

3.1 Introduction

Whether you're a programmer or just a web user looking for answers, a big part of understanding cookies is to go into the gory details. This section does just that.

3.2 How does a cookie really work?

Understanding how cookies really work requires an understanding of how HTTP works.

Cookies transport from Server to Client and back as an HTTP header.

(Cookies是从服务端传递给客户端的一些文本数据,在以后访问同一个站点时,浏览器会再把这些数据通过http请求包头发送给服务器。)

The specifications for this header are explicitly laid out in RFC 2109 .

When a cookie is sent from the server to the browser, an additional line is added to the HTTP headers (example):

Content-type: text/html
Set-Cookie: foo=bar; path=/; expires Mon, 09-Dec-2002 13:46:00 GMT

 

This header entry would result in a cookie named foo . The value of foo is bar . In addition, this cookie has a path of / , meaning that it is valid for the entire site , and it has an expiration date of Dec 9, 2002 at 1:46pm Greenwich Mean Time (or Universal Time) . Provided the browser can understand this header, the cookie will be set. (当浏览器接收到Set-Cookie的“命令”后,按照预定好的协议,浏览器会将这些保存起来,或文件或内存,这可能取决于cookie的有效期。)

When a cookie is sent from the browser to the server, the cookie header is changed slightly:


Content-type: text/html
Cookie: foo=bar

Here, the server is made aware of a cookie called foo , whose value is bar .

 

 

3.3 Breakdown of Cookie Parameters  (Cookie参数明细,主要讲解下Cookie的各个属性)

As we have just seen, a cookie contains more than simply a name and a value. In fact, a cookie has 6 parameters that can be passed to it:(一个CookieItem具有6方面的描述信息。)

    • The name of the cookie,(必选)
    • The value of the cookie,(必选)
    • The expiration date of the cookie,(可选,默认值-1,表示浏览器关闭则清除。)
    • The path the cookie is valid for,(一般用于浏览器管理cookie用 ,用于限定cookie的作用域)
    • The domain the cookie is valid for,(一般用于浏览器管理cookie用,这样,浏览器才知道访问某个url所属的域名时,会在本地cookie文件中找有没有有效的cookie信息要传递给服务端去。)

(注意:domain+path仅仅就是用来限制和匹配cookie的作用域的。因为用户通过浏览器会去访问许多的站点,也有很多站点都用了 cookie技术,那么浏览器必须应该记住哪个cookie对应哪个站点呀,另外,即使在同一个站点内,还可以通过path来决定同一个站点的 cookie,是否能作用于当前访问的path。比如,当前浏览器中保存了域为.google.com的一个cookie,那么当我们访问google 时,浏览器先会看看cookie库中有没有该站点的cookie信息呀,如果有应该传给服务,当然还要通过path做进一步判定,文件中保存的 cookie能不能使用于当前访问的path呢。path匹配一般是最大匹配原则,比如我们访问http://code.google.com时,域匹配 到.google.com)

    • The need for a secure connection to exist to use the cookie.

Two of these are mandatory (its name and its value). The other four can be set manually or automatically. Each parameter is separated by a semicolon when set explicitly. Here is a detailed description of each.

Name, Value

The name of a cookie and its value are set simply by pairing them together:


... foo=bar ...

The value of a cookie can also be null, for the purpose of clearing the cookie value:

 

(之所以允许为null,是为了为服务器清空客户端的cookie留了后路,服务器可以重置cookie的值的。)

... foo= ...

 

Expires

The expires parameter lets you determine the lifetime of the cookie.


... expires=Mon, 01-Jan-2001 00:00:00 GMT ...

 

If Expires is not set explicitly, then it defaults to end-of-session. (注意:Servlet API提供的是setMaxAge(int seconds),其中当输入参数seconds为-1时,表示end-of-session,即当浏览器关闭时,浏览器把cookie信息从文件中删除。) The length of a session can vary depending on browsers and servers, but generally a session is the length of time that the browser is open for (even if the user is no longer at that site). (注意:其实server将cookie信息发送给浏览器,浏览器如果不遵守协议,不保存这些cookie信息,server是拿它没办法的。或者说用户 把浏览器设置成“不接收第三方cookie”。这样,服务端一般只会用cookie来做些提高用户体验的东西,个性化什么的,也就是说如果用户不在意隐私 的话,那么cookie只会给用户带来好处。这里值得一提的是tomcat的HttpSession的JSESSION_ID也是依靠cookie来保存 的,严格来讲session机制也有一部分信息保存在客户端,当然服务端保存得更多。)

Path

The path parameter is potentially the most useful of the 4 optional cookie settings. (Path尽管是可选项,但是它是四个可选项中用的较多的一个。 原因很简单,cookie的发起是服务端的,服务端开发人员愿意使用Path,因为如果把Cookie看成是应用程序的变量,那么path就相当于是命名 空间,用path可以限制cookie.name的作用访问。如果某个cookie的path="/",那么相当于定义了一个全局变量,因为浏览器会在访 问该站点的任何资源时,带上这个cookie;如果path="/hello/",那么浏览器只会在访问"/hello/"目录及其子目录时,才会带上这 个cookie;在访问/advaced/topics/cookie.do资源时,是不会带上这个cookie的。) It sets the URL path the cookie is valid within.

Pages outside of that path cannot read (read这个词用得有点幽默,因为cookies信息是依靠客户端传给服务端的;read好像是server端具备从客户端直接读取信息的权限。但是,如果客户端是个守规矩的家伙时,服务端的开发人员当然喜欢用read,很有主动感。)or use the cookie.

... path=/promo ...

 

If Path is not set explicitly, then it defaults to the URL path of the document creating the cookie.

(如果path不显式设置,那么path被设置成该资源所在的url path.)

Netscape has identified a bug for VERY old versions of Navigator where the path must be specified if an expiration is specified. Furthermore, this path must be set to "/". For more information, browse Netscape's Cookie Spec at:
http://www.netscape.com/newsref/std/cookie_spec.html

Domain

The domain parameter takes the flexibility of the path parameter one step further. If a site uses multiple servers within a domain the it is important to make the cookie accessible to pages on any of these servers.

... domain=www.myserver.com ...

 

Cookies can be assigned to individual machines, or to an entire Internet domain. The only restrictions on this value is that it must contain at least two dots (.myserver.com, not myserver.com) for the normal top-level domains, or three dots for the "extended" domains (.myserver.ny.us, not myserver.ny.us)

IMPORTANT: The server issuing the cookie must be a member of the domain that it tries to set in the cookie. (发布某个cookie的服务器必须也在这个domain里面,也就是说baidu的机器不可能想浏览器发送个google的cookie,尽管报文上是 可以这样发,但是浏览器端会校验的。对于这种非法的cookie,浏览器端是不会接受并保存它的。) That is, a server called www.myserver.com cannot set a cookie for the domain www.yourserver.com. The security implications should be obvious.

If Domain is not set explicitly, then it defaults to the full domain of the document creating the cookie.

Secure

The secure parameter is a flag indicating that a cookie should only be used under a secure server condition, such as SSL. Since most sites do not require secure connections, this defaults to FALSE.

 

 

3.4 How do cookies end up on my hard drive?

After a cookie is transmitted through an HTTP header, it is stored in the memory of your browser . This way the information is quickly and readily available without re-transmission. As we have seen, however, it is possible for the lifetime of a cookie to greatly exceed the amount of time the browser will be open.

In such cases, the browser must have a way of saving the cookie when you are not browsing, or when your computer is shut off. The only way the browser can do this is to move the cookies from memory into the hard drive. This way, when you start your browser a few days later, you still have the cookies you had previously.

The browser is constantly performing maintenance on its cookies. (浏览器是要管理这些cookie的) Every time you open your browser, your cookies are read in from disk, and every time you close your browser, your cookies are re-saved to disk.(一般浏览器启动时,回去加载磁盘上的cookie信息。) As a cookie expires, it is discarded from memory and it is no longer saved to the hard drive.

3.5 What are all those entries in my cookies.txt file?

The layout of Netscape's cookies.txt file is such that each line contains one name-value pair . An example cookies.txt file may have an entry that looks like this:

.netscape.com 

TRUE /
FALSE 946684799
NETSCAPE_ID 100103

Each line represents a single piece of stored information. A tab is inserted between each of the fields.

From left-to-right, here is what each field represents:

domain - The domain that created AND that can read the variable.
flag - A TRUE/FALSE value indicating if all machines within a given domain can access the variable. This value is set automatically by the browser, depending on the value you set for domain .
path - The path within the domain that the variable is valid for.
secure - A TRUE/FALSE value indicating if a secure connection with the domain is needed to access the variable.
expiration - The UNIX time that the variable will expire on. UNIX time is defined as the number of seconds since Jan 1, 1970 00:00:00 GMT. (就是java中的long,把这个long转化成时间即可。)
name - The name of the variable.
value - The value of the variable.

3.6 Where does MSIE keep its cookies?

Microsoft keeps its cookies in different locations, depending on the version of explorer and Windows you are using. The best way to find it is to use the Windows "Search" feature an look for the "Cookies" folder. More information can be found here .

Although the location may be different, the format is the same. Each individual domain's cookies are stored in their own file(每个domain是个单独的文件) , along with the username that accessed the site. For example, if I went to Yahoo.com, I would get a cookie that is stored in the file dwhalen@yahoo.txt .

Note that the username is not sent with the cookie(是用来表示使用本机器的用户的) . See Section 2.10 for more information.

3.7 Are cookies Year 2000 Compliant?

There is no date-specific restriction on the HTTP header used to transmit cookies. In fact, the only determining factor in whether a cookie will be accepted is the programming of the client receiving the cookie.

The major browsers do not have an issue with this. Cookies with expiration dates set with 2-digit or 4-digit years are understood properly. Naturally, it's always advisable to use 4-digit years when setting cookies.

 

原文 :  http://www.cookiecentral.com/faq/#3

Android WLAN STA/AP 并发 Android 9 引入了可让设备同时在 STA 和 AP 模式下运行的功能。对于支持双频并发 (DBS) 的设备,此功能让一些新功能得以实现,例如在用户想要启用热点 (softAP) 时不会中断 STA WLAN。 阅读详情

相关推荐

AP发票批量付款程序(WEB ADI)

CREATE OR REPLACE PACKAGE MEW_AP_BATCH_PAYMENTS_PKG IS   PROCEDURE MAIN(P_BATCH_ID          NUMBER                 ,P_ORG_ID            NUMBER                 ,P_BANK_ACCOUNT_NAME VARCHAR2

储藏室 5051

SameSite Cookie问题处理解决方案(谷歌Chome浏览器出现Whitelabel Error Page或者不停请求现象解决)

谷歌Chrome浏览器出现Whitelabel Error Page或者不停请求现象的解决: 在浏览器地址栏中输入chrome://flags/并打开,将如下选项禁用: SameSite by default cookies Enable removing SameSite=None cookies Cookies without SameSite must be secure 设置为Disabled 重启浏览器即可 哪些人需要关注: 网关开发者 SSO开发者 前后端分离开发者 所有接口..

猎摘互联网软件测试业界技术文章专用博客 1万+

Blender SMPL-X 插件安装

Blender XMPL-X 插件安装

heleneveryday的专栏 5358

HttpOnly

Contents 1 Overview 1.1 Who developed HttpOnly? When? 1.2 What is HttpOnly? 1.3 Mitigating the Most Common XSS attack using HttpOnly 1.3.1 Using Java to Set HttpOnly 1.3.2 Using .NET t...

weixin_34258782的博客 253

ArcGISPro小白必看:5分钟搞定3D地形图制作(附免费数据源)

本文为ArcGISPro初学者提供5步制作专业3D地形图的完整指南,涵盖免费数据获取、项目初始化、数据预处理、3D场景构建和成果输出等关键步骤。特别推荐使用NASA的SRTM高程数据和吉林一号卫星影像,帮助用户快速掌握3D地形图制作技巧,适用于教学演示和科研分析。

weixin_28314575的博客 240

Win11下Edge浏览器CPU占用飙升?试试这5个隐藏设置(附实测对比图)

本文详细解析了Win11下Edge浏览器CPU占用飙升的原因,并提供了5个关键设置优化方案,包括禁用硬件加速、管理扩展程序等,有效降低资源消耗。实测数据显示优化后CPU占用显著下降,适合Win11用户提升浏览器性能。

weixin_29266679的博客 1511

Mitigating Cross-site Scripting with HTTP-Only Cookies

Contents  [hide]  1 Overview 1.1 Who developed HttpOnly? When?1.2 What is HttpOnly?1.3 Mitigating the Most Common XSS attack using HttpOnly 1.3.1 Using Java to Set HttpOnly1.3.2 Usin

1102

文华财经公式编程:麦语言简介及基础语法

文华财经公式语言(麦语言)是一种专门用于金融领域的编程语言,它是由文华财经公司开发的。提供了丰富的金融计算函数和数据处理功能,可以用于金融市场的数据分析、模型建立和交易策略的开发。例1:A:CLOSE;// 定义变量A为收盘价(盘中k线没有走完的时候A为最新价)。例2:MA5:=MA(C,5);// 定义收盘价的5周期均线(C为CLOSE简写)。例3:A:=REF(C,1);// 取得前一根k线的收盘价。

超哥量化的博客 1万+

浅谈HTTP Cookie 的 Secure 和 HTTPONLY属性

最近工作中遇到了关于cookie 的secure及httponly属性的问题, 所以关注并学习了一段时间,这里做一下简要记录。关于secure和httponly标志的用途可以参考wikipedia. Secure cookieA secure cookie has the secure attribute enabled and is only used via HTTPS, ensuring

一些好玩的东西 1万+

基于奥比中光Orbbec Astra Pro与ROS实现实时3D环境建模:orb_slam2实战指南

本文提供了一份详细的实战指南,介绍如何使用奥比中光Orbbec Astra Pro深度摄像头与ROS系统,部署并运行ORB-SLAM2算法,实现实时3D环境建模与定位。内容涵盖从驱动安装、环境配置、算法编译到摄像头标定与性能调优的全流程,旨在帮助开发者快速搭建一套高性价比的视觉SLAM系统。

weixin_29054399的博客 335

告别Nginx原始日志!VictoriaLogs+Grafana构建企业级应用日志分析平台实战

描述:做为一个合格的运维工程师,在面对企业安全运维管理中,日志审计是一项非常重要的工作。授人以鱼不如授人以渔,各位运友们可参照作者的方案设计,在自己的项目中根据实际情况调整落地,例如,不在仅仅采集 NGINX 应用日志,而是采集 Apache、Tomcat、SpringBoot 等多种应用服务器的日志,又如,不再仅仅采集网络设备、安全审计审计日志,而是 Windows、Linux 等多种操作系统的审计日志等,大家可充分发挥想象、实践能力,也欢迎大家在知识星球中分享自己的方案设计,一起交流学习。

全栈工程师修炼指南-IT知识分享 2477

Cookie--Session 自用解析

Cookie 一: 概念 * 客户端会话技术,将数据保存到客户端 二: 基础入门 * 使用步骤 1. 创建Cookie对象,绑定数据 * new Cookie(String name, String value) 2. 发送Cookie对象 * response.addCookie(Cookie cookie) 3. ...

cq724165616的博客 163

微信小程序 - 最新实现项目适老化设计全流程及源码,老年模式大字版与常规版页面样式切换,老年人大字模式字体与布局更换关怀版解决方案(新老项目均适用的方案,全局页面统一修改文本字号/DOM排版元素等)

微信小程序,vue2,vue3,老年大字版设计,小程序开发如何实现适老化方案,放大字体字号及改变页面的布局,小程序关怀模式实现思路及代码,统一将布局都改了,全局修改字体大小适配老年人看不清问题,小程序怎么接入老年模式并根据模式改变页面的UI设计,实现全局修改字体大小适老化/关怀版改造,最新详细示例代码全流程,字体放大/缩小,老项目怎么适配老年人模式方案,小程序适老化设计指南,当切换成老年模式时页面所有排版都会发生变化,小程序vue开发,新手详细教程,老年模式字体设置思路和UI布局的设计,开发者可以通过wx.

🏆 前端领域优质创作者 7308

Cookie

1. 创建Cookie对象,绑定数据 * new Cookie(String name, String value) 2. 发送Cookie对象 * response.addCookie(Cookie cookie) 3. 获取Cookie,拿到数据 * Cookie[] request.getCookies()

金蒂 1677

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

快速入门Cookie及案例

会话技术 1.会话:一次会话中包含多次请求和响应 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 2.功能:在一次会话的范围内的多次请求间,共享数据 3.方式: 客户端会话技术:Cookie 服务器端会话技术:Session Cookie~~ 1.概念:客户端会话技术,将数据保存到客户端 2.快速入门: 使用步骤: 1.创建Cookie对象,绑定数据 new ...

狗凡的博客 340

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

【大数据笔记】Cookie 和 Session

【大数据笔记】Cookie 和 Session会话技术1. 会话:一次会话中包含多次请求和响应。2. 功能:在一次会话的范围内的多次请求间,共享数据3. 方式:Cookie1. 概念:客户端会话技术,将数据保存到客户端2. 快速入门:3. 实现原理4. cookie的细节5. Cookie的特点和作用JSP:入门学习1. 概念:2. 原理3. JSP的脚本:JSP定义Java代码的方式4. JSP的内置对象:Session:主菜1. 概念:服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器

Wu__Code的博客 639

Java Cookie与Session 讲解

Java Cookie与Session 讲解 一、Cookie与Session讲解: 概念:一次会话中包含多次请求和响应; 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止; 功能:再一次会话的范围内的多次请求间,共享数据; 方式: 客户端会话技术:Cookie; 服务器端会话技术:Session; 1.Cookie: 概念:客户端会话技术,将数据保存到客户端; ...

Fe_cow的博客 423

会话技术_Cookie和Session的应用

目录会话技术Cookie:1. 概念2. 快速入门3. 实现原理4. cookie的细节5. Cookie的特点和作用6. 案例:Session:主菜1. 概念2. 快速入门:3. 原理4. 细节 会话技术 会话:一次会话中包含多次请求和响应。 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 功能:在一次会话的范围内的多次请求间,共享数据 方式: 1. 客户端会话技术:Cookie 2. 服务器端会话技术:Session Cookie: 1. 概念 客户端会话技术,将数据保存到

david2000999的博客 200

javaWeb(十二)----- 会话技术:Cookie

会话技术 ✔ 会话:一次会话中包含多次请求和响应 * 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 ✔ 功能:在一次会话的范围内的多次请求间共享数据 ✔ 方式: 1. 客户端会话技术:Cookie 2. 服务器端会话技术:Session Cookie ✔ 概念:客户端会话技术,将数据保存到客户端 ✔ 快速入门 --- 使用步骤: 1. 创建Cookie对象,绑定数据 * new Cook...

Learning_xzj的博客 330

JavaWeb:Cookie和Session(1)

***///1.创建Cookie对象//2.发送Cookiedemo2/**Cookie快速入门*///3. 获取Cookie//获取数据,遍历Cookiesif(cs!= null){cookie的细节一次可不可以发送多个cookie?可以,可以创建多个Cookie对象,使用response调用多次addCookie方法发送cookie即可。/**Cookie快速入门*///1.创建Cookie对象。

2401_87029710的博客 974

【JavaWeb】会话 cookie

setDomain(“.baidu.com”),那么tieba.baidu.comfflnews.baidu.com中cookie可以共享。2 .浏览器对于单个cookie的大小有限制(4kb)以及 对同一个域名下的总cookie数量也有限制(20个)1 .假设在一个tomcat服务器中,部署了多个web项目,那么在这些web项目中cookie能不能共享?2 .在不登录的情况下,完成服务器对客户端的身份识别(如百度,在不登录的情况下,记录用户自定义设置)功能:在一次会话的范围内的多次请求间,共享数据。

follow your heart 438

cookie session jsp

cookie session jspcookiejspsession cookie cookie:客户端会话技术,将数据保存到客户端 tomcat8之后,cookie中才可以保存中文数据,但是对于特殊字符还不支持(例如空格),需要进行URL进行编码和解码。 jsp jsp中既可以定义HTML标签,又可以写Java代码。用于简化书写。 (本质上是一个servlet) jsp运行原理:1、服务器解析请求信息,找到对应jsp资源 2、若找到,将jsp转换为.java文件 3、编译.java文件,产生.class字

weixin_43423541的博客 112

会话技术——Cookie&Session&JSP入门

文章目录会话技术Cookie:JSP:入门学习Session:主菜案例:验证码 会话技术 会话:一次会话中包含多次请求和响应。 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 功能:在一次会话的范围内的多次请求间,共享数据 方式: 客户端会话技术:Cookie 服务器端会话技术:Session Cookie: 概念:客户端会话技术,将数据保存到客户端 快速入门: 使用步骤: 创建Cookie对象,绑定数据 new Cookie(String name,

一路向北 152

JAVA 基础会话技术 Cookie和 Session 详解(二)(小白必学)

JAVA 基础会话技术 Cookie和 Session 详解(二一级目录二级目录三级目录 一级目录 二级目录 三级目录

qq_39654399的博客 426
上一篇: 生活日记二则
下一篇: C++标准库头文件介绍
UU_Yang
博客等级 码龄23年 926粉丝 213原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值