关于chrome cookies在哪问题

IE下关于Cookie 跨域问题 - 开源中国社区
当前访客身份:游客 [
当前位置:
在Cookie规范上说,一个cookie只能用于一个域名,不能够发给其它 的域名。因此,如果在浏览器中对一个域名设置了一个cookie,这个cookie对于其它的域名将无效。如果你想让你的用户从你的站点中的其中一个进行 登录,同时也可以在其它域名上进行登录,这可真是一个大难题。
跨二级域名
  我们知道cookie是可以跨二级域名来访问,这个很好理解,例如你 &在的web应用程序创建了一个cookie,要想在这样的二级域名对应的应用程序中访问,就必须 你在创建cookie的时候设置domain参数。 以asp.net为例 代码如下:
HttpCookie cookie =&new&HttpCookie("name",&"");
cookie.Domain =&"";
cookie.Path =&"/";
Response.Cookies.Add(cookie);
跨顶级域名
  如果我不是二级域名而是完全在不同顶级域名中,例如
所在的web应用程序创建了一个cookie,想要在
或其二级域名的应用程序中访问,改怎么办呢?我们知道靠常规反的方法是访问不了的,关键我们就是看看有没有方法可以访问。事实是Cookie可以在一定条 件下跨域,而不是随心所欲的实现跨域。
  我们来做个测试,看看两个站点 &和 &如何实现cookie跨域访问。 按照常规我们需要有2个顶级域名,并且有DNS服务器才能够配置域名,否则我们是无法验证的,但是这里我们也没有必要那么麻烦,我们可以通过修改 hosts文件来模拟。在 c:\windows\system32\drivers\etc 中有 hosts文件,在末尾添加上
127.0.0.1&&&&
127.0.0.1&&&&
两行,就可以将本机用上面的域名访问本机回环地址了。我们只需要在IIS上部署一套程序,ip为本机回环地址,用两个域名分别访问就可以了。
  我们新建三个页面,分别是 Default.aspx、SSO.ashx、GetCookie.aspx。
  其中Default.aspx是 &的页面,访问的地址是 /Default.aspx。看一下前台代码,它没有任何后台代码
&%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Admin10000.Web.Default" %&
&!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&
&html&xmlns="http://www.w3.org/1999/xhtml"&
&head&runat="server"&
&&&&&title&&/title&
&&&&&form&id="form1"&runat="server"&
&&&&&&&&&script&type="text/javascript"&
&&&&&&&&&&&&var _frm = document.createElement("iframe");
&&&&&&&&&&&&_frm.style.display = "none";
&&&&&&&&&&&&_frm.src = "/SSO.ashx";
&&&&&&&&&&&&document.body.appendChild(_frm);&&
&&&&&&&&&/script&
&&&&&/div&
&&&&&/form&
  另外一个是 SSO.ashx 页面,我们认为它是 &的页面,前台没有任何代码,后台代码如下:
using&System.Collections.G
using&System.L
using&System.W
using&System.Web.S
using&System.Web.SessionS
namespace&Admin10000.Web
&&&&/// &summary&
&&&&/// $codebehindclassname$ 的摘要说明
&&&&/// &/summary&
&&&&[WebService(Namespace =&"http://tempuri.org/")]
&&&&[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
&&&&public&class&SSO : IHttpHandler
&&&&&&&&public&void&ProcessRequest(HttpContext context)
&&&&&&&&&&&&HttpCookie cookie =&new&HttpCookie("name",&"");
&&&&&&&&&&&&cookie.Domain =&"";
&&&&&&&&&&&&cookie.Path =&"/";
&&&&&&&&&&&&cookie.Expires = DateTime.Now.AddMinutes(10000);
&&&&&&&&&&&&context.Response.Cookies.Add(cookie);
&&&&&&&&&&&&context.Response.ContentType =&"text/plain";
&&&&&&&&&&&&context.Response.AddHeader("P3P",&"CP=CAO PSA OUR");
&&&&&&&&&&&&context.Response.Write("");
&&&&&&&&public&bool&IsReusable
&&&&&&&&&&&&get
&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&return&
&&&&&&&&&&&&}
  最后是 GetCookie.aspx 页面,它同样是下的页面,没有前台代码,只有后台代码:
using&System.Collections.G
using&System.L
using&System.W
using&System.Web.UI;
using&System.Web.UI.WebC
namespace&Admin10000.Web
&&&&public&partial&class&GetCookie : System.Web.UI.Page
&&&&&&&&protected&void&Page_Load(object&sender, EventArgs e)
&&&&&&&&&&&&if&(Request.Cookies["name"] !=&null)
&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&Response.Write(Request.Cookies["name"].Value);
&&&&&&&&&&&&}
  好了,现在我们访问测试,通过访问 /Default.aspx&之后,这时会通过iframe载入调用SSO.ashx这个页面,执行后台代码创 建cookie,然后访问 /GetCookie.aspx &我们得到了相应的cookie。说明在下创建的cookie在下是可以访问到的。
要注意的地方:
  &提 示 SSO.ashx&的后台代码中有一句:context.Response.AddHeader("P3P", "CP=CAO PSA OUR"); 是用来设置P3P响应头。是因为IE浏览器支持的P3P导致iframe跨站点时cookie被阻止,无法创建cookie。(FireFox目前还不支 持P3P安全特性,FireFox自然也不存在此问题。不需要添加P3P响应头。)
  通过iframe的src属性将域下的cookie值作为get参数重定向到域下SSO.ashx页面 上,SSO.ashx获取域中所传过来的cookie值,并将所获取到值写入cookie中,这样就简单的实现了cookie跨域的访 问。
  另外Default.aspx页面也可改为JS调用形式:
&%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Admin10000.Web.Default" %&
&!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&
&html&xmlns="http://www.w3.org/1999/xhtml"&&
&head&runat="server"&
&&&&&title&&/title&
&&&&&form&id="form1"&runat="server"&
&&&&&&&&&script&type="text/javascript"&src="/SSO.ashx"&&/script&
&&&&&/div&
&&&&&/form&
文章来至:开发分享社区
共有1个评论
<span class="a_vote_num" id="a_vote_num_
http://php.net/manual/zh/function.setcookie.php
http://cn2.php.net/manual/zh/reserved.variables.cookies.php
PHP的setcookie和$_COOKIE很方便: setcookie("TestCookie", $value, time()+3600, "/~rasmus/", "", 1);
$_COOKIE['TestCookie'];
更多开发者职位上
有什么技术问题吗?
小近的其它问题
类似的话题查看: 1509|回复: 10
求助,关于cookies.sqlite的问题
最近cookies老是出问题,每天早上一开电脑,发现网站都必须登录了,看下了以前的cookies.sqlite文件被备份成了cookies.sqlite.bak,又重新生成了一个新的cookies.sqlite,试了下用旧的覆盖一下,正常登录,但是第二天又出现这情况了。不知道该怎么排查啊
404 Not Found
404 Not Found
从38 beta开始,有过多次同样的情况。怀疑是bug但没见到其他人报告过。用sqlite重新导出生成过数据库,也没什么效果,还是间歇性的崩掉。
怪不得我卡饭老是要重新登录,总觉得应该没过登录期限的,bug虽小可好烦人
俺的比较正常,已经很久没登陆了
先safe-mode试试
我这好像没问题
我前几天也出现这种情况了,然后就把bak文件替换回来了,到现在为止还没出现过第二次
从38 beta开始,有过多次同样的情况。怀疑是bug但没见到其他人报告过。用sqlite重新导出生成过数据库,也没 ...
只能先观察观察了
怪不得我卡饭老是要重新登录,总觉得应该没过登录期限的,bug虽小可好烦人
主要是有的网站我改cookies才能上,这样一搞每次都得改,麻烦死了
我前几天也出现这种情况了,然后就把bak文件替换回来了,到现在为止还没出现过第二次
我这替换只能坚持一天,然后又没了,蛋疼
从38到38.0.1,没出现过类似问题。
我只用官方正式版。
Copyright & KaFan & All Rights Reserved.
Powered by Discuz! X3.1( 苏ICP备号 ) GMT+8,为了账号安全,请及时绑定邮箱和手机
关于使用COOKIE保存登陆账号密码问题
&%@ page language="java" import="java.util.*,java.net.*" contentType="text/ charset=utf-8"%& &% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; String password=""; String username=""; request.setCharacterEncoding("utf-8"); username = request.getParameter("username");
password = request.getParameter("password"); if("admin".equals(username)&&"admin".equals(password)){
session.setAttribute("loginUser", username);
request.getRequestDispatcher("sucess.jsp").forward(request, response); } else{
response.sendRedirect("false.jsp");
} request.setCharacterEncoding("utf-8");
//首先判断用户是否选择了记住登录状态
String[] isUseCookies = request.getParameterValues("isUseCookie");
if(isUseCookies!=null&&isUseCookies.length&0)
//把用户名和密码保存在Cookie对象里面
String username1 = URLEncoder.encode(request.getParameter("username"),"utf-8");
//使用URLEncoder解决无法在Cookie当中保存中文字符串问题
String password1 = URLEncoder.encode(request.getParameter("password"),"utf-8");
Cookie usernameCookie = new Cookie("username",username1);
Cookie passwordCookie = new Cookie("password",password1);
usernameCookie.setMaxAge(864000);
passwordCookie.setMaxAge(864000);//设置最大生存期限为10天
response.addCookie(usernameCookie);
response.addCookie(passwordCookie);
Cookie[] cookies = request.getCookies();
if(cookies!=null&&cookies.length&0)
for(Cookie c:cookies)
if(c.getName().equals("username")||c.getName().equals("password"))
c.setMaxAge(0); //设置Cookie失效
response.addCookie(c); //重新保存。
&/html&各位大神,看看为什么我这段逻辑代码无法保存用户名密码?谢谢
写完了,我的和视频有点不同
写下你的评论...
Copyright (C)
All Rights Reserved | 京ICP备 号-2关于Cookie小知识 – 京东商城
◇关注京东
◇客户服务
关于Cookie小知识
来源:京博士
更新: 17:18:10
[新增京博士]
摘要:谷歌公司在微博发布了维基百科对Cookie的解释。Cookie(复数形态Cookies),中文名称为小型文本文件或小甜饼,指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用cookie)。由网景公司的前雇员Lou Montulli在1993年3月所发明。
  什么是Cookie?  谷歌公司在微博发布了维基百科对Cookie的解释。Cookie(复数形态Cookies),中文名称为小型文本文件或小甜饼,指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用cookie)。由网景公司的前雇员Lou Montulli在1993年3月所发明。  在互联网中,对Cookie的应用随处可见:  Cookie可以保持登录信息到用户下次与服务器的会话,下次访问同一网站时,用户会发现不必输入用户名和密码就已经登录(当然,不排除用户手工删除Cookie),以便简化登录手续;电子商务网站的“购物车”,用户可能会在一段时间内在同一家网站的不同页面中选择不同的商品,这些信息都会写入Cookies,以便在最后付款时提取信息。  比如你经常上网看汽车,当你搜索法拉利,优先显示的搜索结果是法拉利汽车,而不是法拉利这个人。再例如,一些电商网站中的“猜你喜欢”功能就需要用到Cookie。  Cookie:盗取隐私工具之辩  这在很多国家都是争论热点。在央视315晚会上,“Cookie跟踪泄漏隐私”被当成惊世骇俗的侵权行为。  首先被曝光的是品友互动。央视记者在北京市朝阳区一幢写字楼找到品友互动,该公司大客户总监张杰当场透露,品友互动就像一个蜘蛛网一样,不管用户在哪里,都可以抓到用户。据张杰介绍,品友互动目前可以捕捉到互联网上5.7亿的Cookie。  被曝光的易传媒则号称拥有3亿多互联网用户Cookie数据;悠易互通、艾维邑动号称拥有5亿网民Cookie数据;传漾公司和亿玛在线均号称拥有9亿C与品友互动一样,这些公司获取用户Cookie,基本都是通过在别的网站加代码来实现。  精硕世纪科技有限公司销售人员告诉央视315暗访人员,“只要拿到Cookie,包括用户的手机号码,用户是谁,电话多少都可以知道。”  央视315报道中还引用了网易公司华东渠道中心总监郭兴华的言论,网易可以看到用户的邮件内容,以此来分析用户习惯并发送精准广告。网络通过各种手段获取的用户详细信息,这一可以使公司能更精准地投放广告。例如用户有股票账号来回复一些邮件,网易就可以根据邮件内容分析出该用户是金融类客户,并针对他们来投放一些广告。  某技术人士认为,网易的销售人员描述有误,实际上看不到单个用户的数据,而是由机器自动完成。网易方面在回应中表示:“我们将对销售部门进行规范,避免因夸大宣传,引起误导。”  从此后各家公司声明,以及高管接受腾讯科技专访时的说法来看,互联网营销公司销售人员的夸张描述很可能是为了争抢生意。  “如果通过收集用户信息是为通过跟踪用户行为去改善用户体验,给用户带来更多便利,这是合情合理的。如果利用收集的用户信息用以牟利或转卖,这自然是违法的。另一个维度上,对信息的解析也是考量是否构成用户信息泄露的一个标准。”一位长期从事互联网投资的人士表示,从技术上而言,如果是针对大规模的用户信息做行为分析,这并不会触及到单个用户的信息泄露。  “通过Cookie,互联网公司知道你喜欢什么,但并不知道你是谁。”这也许是对Cookie及其在精准营销上的应用最恰当的描述。  行业反思:亟待建立隐私标准  看似央视315晚会此次曝光不会对相关网站带来实质性影响。  亿玛公司、力美、品友互动等CEO在接受腾讯科技专访时,均否认此次遭央视曝光会影响公司经营。他们称,互联网圈都懂Cookie规则,投资人更明白Cookie有什么影响,不会对公司失去信心,精准广告是未来趋势。  也许,对这些以大数据分析为基础的营销公司而言,此次被曝光更大的压力应该来自非资本方的压力。  博客中国创始人方兴东在做客腾讯微访谈时表示,媒体报道对Cookie的片面化、简单化、妖魔化的报道,引起用户无谓的恐慌,不利于问题认清与解决。  分析人士称,大众舆论及意识形态形成的影响向市场管理层的传导对行业的杀伤力远胜央视315报道。  需要强调的是,在国外,谷歌、亚马逊、Facebook也都得益于对用户行为收集和分析,才能拿出最出色商业体验。这也是互联网颠覆传统媒体“广告主知道有一半广告费用被浪费掉,但它不知道浪费掉的是哪一半”的核心竞争力。  在国内,阿里巴巴、京东开发大数据也依赖Cookie支持。很多商业网站普遍采用跨站跟踪和Cookie跟踪等手段收集、分析用户上网行为的数据,以实现广告的精准投放。  方兴东称,Cookie的有效合理使用,是互联网的优势所在,也是互联网的价值,不能把Cookie问题简单化绝对化,要做的是防止滥用,而不是不用。  此前,W3C发布“禁止跟踪”(DNT, Do Not Track)的标准草案,根据该标准草案,用户可以选择禁止被网站跟踪。微软和欧盟于10月相继宣布支持该标准,谷歌也于2012年底宣布支持该标准。也就是说,用户可有权选择是否选择被Cookie记录。  一位广告行业人士向腾讯科技指出,如果用户明确禁止Cookies跟踪,这个时候网站继续获取用户信息,明显就属于侵犯用户行为。正常的情况下,网站是可以抓取用户性别、年龄等信息,应该打击的是收集用户隐私的行为,包括QQ号码,名字,身份证,护照等信息。大多数情况下,用户欢迎Cookies跟踪,但国内亟待明确隐私的标准到底是什么。  告知与提醒  一位技术人士认为,对Cookie的使用需要用户和商家共同重视。为了保护用户隐私,各大网站不应轻易让广告中注入代码获取Cookie,同时告知用户可能会获取用户的哪些信息。  创新工场CEO李开复认为,按照邮件内容(或其他用户信息)投放精准广告和个性化体验,这是大部分邮箱(包括谷歌)都用的技术,虽有争议,但不是网易一家的问题。建议所有邮箱:1)告知用户那些信息被使用,2)保证不滥用信息,3)提供do not track选项(保护隐私,但放弃精准广告和个性化体验)。  对于用户来说,可通过浏览器设置清除Cookie(以IE浏览器为例):  1.点击浏览器工具栏上面的“工具”菜单.  2.在打开的下拉列表中点击“Internet选项”  3.在打开的弹出菜单中点击“删除按钮”  删除flash cookie:  1.点击操作系统的“开始”按钮,再点击“控制面板”  2.在打开的“控制面板”中点击 “Flash Player”  3.在打开的"flash player 设置管理器"中选择“存储”,再点击“全部删除”按钮  4.最后选中“删除所有站点数据和设置”,然后点击“删除数据”按钮就即可  5.选中"Cookie 和网站数据",其它项可以不选中,再点击下面的删除按钮。等待约10秒钟左右,就会出现删除成功的提示。 &
以上词条内容均来源网络,均系原作者观点及所有,仅供参考,不代表京东立场,感谢您对京东的支持,祝您购物愉快!
版权声明:京博士用户不得侵犯包括他人的著作权在内的知识产权以及其他合法权利,请勿在未经授权的情况下转载任何涉及著作权侵权的词条,除非完全由您个人创作。由于用户发布的相关内容引起的任何知识产权纠纷或其他法律纠纷,其责任在于用户本人,与京博士无关。点击发布即表示您确认该词条不违反国家相关法律法规及词条协议,并且您拥有该词条的合法、完整的版权或者合法、完全的转载授权。
多品类齐全,轻松购物
快多仓直发,极速配送
好正品行货,精致服务
省天天低价,畅选无忧}

我要回帖

更多关于 angular cookies 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信