cookie基础:
setMaxAge函数设置生成周期setMaxAge(int x),其中x以秒为单位。
setDomain设置使用域
response.addCookie(cookie);
更新中
response.addCookie(cookie);存储位置:
response.addCookie(cookie);这先放到response中了,然后去客户端.放到客户端的机器上.然后它要是再访问你的服务器时就会带着这些cookie并在request中放置着来找你。然后你就可以在request中找到这些cookie,拿到以后想干嘛。
在Cookie跨域时,需要设置Cookie的SetDomain参数,如果Cookie的设置保存在java类中执行,问题是这样的:
String domain=".test.com"
Cookie c = new Cookie("userid", “aaaaaaa”);
c.setPath("/");
c.setDomain(domain);
Cookie c1 = new Cookie("pass", member.getPassword());
c1.setPath("/");
c1.setDomain(domain);
这样时,Cookie的作用域不起作用。
而c.setDomain(".test.com");确可以,这是什么原因呀?
答:
正常的cookie只能在一个应用中共享,即一个cookie只能由创建它的应用获得。
1.可在同一应用服务器内共享方法:设置cookie.setPath("/");
本机tomcat/webapp下面有两个应用:cas和webapp_b,
1)原来在cas下面设置的cookie,在webapp_b下面获取不到,path默认是产生cookie的应用的路径。
2)若在cas下面设置cookie的时候,增加一条cookie.setPath("/");或者cookie.setPath("/webapp_b/");就可以在webapp_b下面获取到cas设置的cookie了。
3)此处的参数,是相对于应用服务器存放应用的文件夹的根目录而言的(比如tomcat下面的webapp),因此cookie.setPath("/");之后,可以在webapp文件夹下的所有应用共享cookie,而cookie.setPath("/webapp_b/");是指cas应用设置的cookie只能在webapp_b应用下的获得,即便是产生这个cookie的cas应用也不可以。
4)设置cookie.setPath("/webapp_b/jsp")或者cookie.setPath("/webapp_b/jsp/")的时候,只有在webapp_b/jsp下面可以获得cookie,在webapp_b下面但是在jsp文件夹外的都不能获得cookie。
5)设置cookie.setPath("/webapp_b");,是指在webapp_b下面才可以使用cookie,这样就不可以在产生cookie的应用cas下面获取cookie了
6)有多条cookie.setPath("XXX");语句的时候,起作用的以最后一条为准。
6)设置多个path的方法???
2.跨域共享cookie的方法:设置cookie.setDomain(".jszx.com");
A机所在的域:home.langchao.com,A有应用cas
B机所在的域:jszx.com,B有应用webapp_b
1)在cas下面设置cookie的时候,增加cookie.setDomain(".jszx.com");,这样在webapp_b下面就可以取到cookie。
2)这个参数必须以“.”开始。
3)输入url访问webapp_b的时候,必须输入域名才能解析。比如说在A机器输入:http://lc-bsp.jszx.com:8080/webapp_b,可以获取cas在客户端设置的cookie,而B机器访问本机的应用,输入:http://localhost:8080/webapp_b则不可以获得cookie。
4)设置了cookie.setDomain(".jszx.com");,还可以在默认的home.langchao.com下面共享。
5)设置多个域的方法???
最近的工作经常用到cookie,看了一些资料,虽然原来依赖cookie比较多的方案已经改成现在这个了,但是当时看得一些东西还是最好记下来,免得过些天就一干二净了,怪可惜的。
参考文章:http://www.iteye.com/topic/34400
分享到:
相关推荐
这是为了说明iOS Set-Cookie问题。 该存储库应与一起使用。 快速开始 npm install npm start 该服务应该可以通过。 用法 端点将读取传递给它的查询参数'returnUrl'并将Set-Cookie标头传递给客户端,且'ReturnUrl'...
主要介绍了php第一次无法获取cookie问题处理,需要的朋友可以参考下
对于Form验证,验证是通过cookie进行的,在执行Request.IsAuthenticated时,会请求客户端相应的Cookie, Cookie名是在web.config中指定的,比如博客园web.config中的设置: 代码如下:”Forms”> <forms name=”....
该文档整合了cookie的httponly和secure的简介,已经设置该属性时会遇到的问题,以及设置属性的方式
偶然想到一个问题:www.g.cn能把cookie设置为.g.cn,那么www.com.cn能设置把cookie设置为.com.cn吗
一、属性说明: 1 secure属性 ...也就是说两个属性,并不能解决cookie在本机出现的信息泄漏的问题(FireFox的插件FireBug能直接看到cookie的相关信息)。 二、实例 项目架构环境:jsp+servlet+applet
最近做的合作网站嵌入到对方的iframe中去,在safari,opera和有些版本的搜狗浏览器(内核版本原因)中不能读到cookie。
chrome监听cookie变化与赋值问题 下面代码给大家介绍了chrome监听cookie变化,代码如下所示: /** * 监听cookie变化 */ chrome.cookies.onChanged.addListener(function(changeInfo){ // cookies.onChanged...
解决方法是: 代码如下: //www.B.com里的被调用的页面需要写P3P头,从而解除IE对写Cookie的阻止 context.Response.AddHeader(“P3P”, “CP=CAO PSA OUR”); //www.A.com里通过ajax调用www.B.com里的内容时,是跨域...
在main.js设置 // 携带cookie ...然后自己慢慢排查,联合后端同事,排查这个cookie问题,前端也配置了 axios.defaults.withCredentials = true; 后端也配置了跨域cookie,然后就是没用,每次后台获取到的ses
原生登录cookie保持提供webview使用
主要介绍了axios携带cookie配置详解(axios+koa),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
因为网站系统的日益庞大,不同域名业务,甚至不同合作方网站的cookie可能或多或少需要进行共享使用,遇到这个情况的时候,大家一般想到的是使用登录中心分发cookie状态再进行同步进行解决,成本较高而且实施起来比较...
其他系统可以共享这个cookie。但是新的四台服务器中并没有申请域名,只有四个ip: 192.168.0.1 单点登录服务器 192.168.0.2 192.168.0.3 192.168.0.4 因为每台服务器有两个项目,都用到单点登录,所以通过修改新的...
解决微信不支持Cookie的问题,该程序能满足简单的Cookie使用
设置了cookie,在不关闭浏览器的情况下都没什么问题,关闭浏览器之后再重新打开,就读取不到cookie了,失效时间设置的是30天,在网上查了下,IE只支持cookie1版本,里面禁止使用"=,;"等字符
我在windows7的环境中,没有问题。已经修改过了,alpha1.0.1版本 详细说明: 该软件,可以手动配置,使部分需要保留的cookie(和FlashCookie),不被删除。比如:amazon等。 软件运行后,可以在report文件夹中,...
在采集需要登陆后访问的页面中,采集程序需要保存登录后获取的cookie,由于有些网站登录验证成功后就将用户直接重定向到目标页,