问题描述:
需要使用一个跨域的cookie,发现无法设置和读取cookie
cookie使用的是jquery cookie.下载地址:http://plugins.jquery.com/cookie/。
说实话,官方的使用方法实在没看懂,好在网友给力。
简单的说下使用方法:
写cookie:
$.cookie('php', 'phpdo');
读取cookie:
$.cookie('php'); // cookie存在 => 'phpdo'
删除cookie:
通过传递null作为cookie的值即可
$.cookie('php', null);
我的cookie:$.cookie(“name”,name, {path:’/’, domain:’uelife.cn’, secure: true});
查找了半天,就是没有发现问题所在。正纠结的时候不小心又看到了一下参数。敞亮了。
secure: true:如果为true,cookie的传输需要使用安全协议(HTTPS)。
我这的web都是http了,当然打不开了。
好吧。今天还是发生了一个手欠的错误。
各个参数说明:
1).expires: 365
定义cookie的有效时间,值可以是一个数字(从创建cookie时算起,以天为单位)或一个Date 对象。如果省略,那么创建的cookie是会话cookie,将在用户退出浏览器时被删除。
2).path: ‘/’
默认情况:只有设置cookie的网页才能读取该cookie。
定义cookie的有效路径。默认情况下, 该参数的值为创建 cookie 的网页所在路径(标准浏览器的行为) 。
如果你想在整个网站中访问这个cookie需要这样设置有效路径:path: ‘/’。
如果你想删除一个定义了有效路径的 cookie,你需要在调用函数时包含这个路径:$.cookie(‘php’, phpdo, { path: ‘/’ });。
domain: ‘phpdo.net’
默认值:创建 cookie的网页所拥有的域名。
3).secure: true
默认值:false。如果为true,cookie的传输需要使用安全协议(HTTPS)。
4).raw: true
默认值:false。
默认情况下,读取和写入 cookie 的时候自动进行编码和解码(使用encodeURIComponent 编码, decodeURIComponent 解码)。要关闭这个功能设置 raw: true 即可。