cookie 跨域访问
废话不知道该说些什么。。。先看代码吧。
cookie 是浏览器保存在用户计算机上的少量数据 //读取cookie
function getCookie(name) {
var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
if (arr = document.cookie.match(reg)) {
return decodeURI(arr[2]);
} else {
return null;
}
}; // delCookie("userName"); //设置cookie 值与过期时间
function setCookie(name, value, time) {
if (time) {
var setExp = gerExpTiem(time);
var exp = new Date();
exp.setTime(exp.getTime() + setExp);
document.cookie = name + "=" + encodeURI(value) + ";expires=" + exp.toUTCString();
} else {
document.cookie = name + "=" + encodeURI(value);
} }; //删除cookie
function delCookie(name) {
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval = getCookie(name); if (cval != null) {
document.cookie = name + "=" + cval + ";expires=" + exp.toUTCString();
}
}; //获得过期时间 s10 ,h10 ,d10 s秒,h小时,d天数
function gerExpTiem(time) {
var timeType = time.substring(0, 1);
var _setTime = time.substring(1, time.length);
if (timeType == "s") {
return _setTime * 1000;
} else if (timeType == "h") {
return _setTime * 60 * 60 * 1000;
} else if (timeType == "d") {
return _setTime * 24 * 60 * 60 * 1000;
}
};
以上是对cookie 进行操作(添加,删除,获取) 网上大多例子都是一样的,本人也是参考的,大家可参考。。。
接下来是重点啦
cookie域 设置域:domain=siteDomain 这个主要用在同域的情况下共享一个cookie,
例如 "www.taobao.com" 与 "ued.taobao.com"
两者是共享一个域名"taobao.com",
我们如果想让 "www.taobao.com" 下的cookie被 "ued.taobao.com"
访问,那么就需要把path属性设置为 "/",
并且设置 cookie 的domain-->document.cookie='cookieName=cookieValue;expires=expireDate;path=/;domain=taobao.com'。
我比较懒,这是copy 别人的,是在用一个域下(二级域名),
如果是:www.baidu.com 与 www.taobao.com 这样是不能跨域访问cookie的。
服务器端添加响应头
<?php header('Access-Control-Allow-Credentials:true'); ?>
客户端添加
$.ajax({
type: method,
url: reqObj.testAddress+reqName,
dataType: "json",
crossDomain: true,
xhrFields: { //注意添加红色部分
withCredentials: true
},
timeout : reqObj.set_Timeout,
success: succCallback,
error: errorCallback
});
参考来源:
http://www.cnblogs.com/MyRobotDream/p/3543402.html
http://www.111cn.net/wy/html5/75509.htm
cookie 跨域访问的更多相关文章
- 解决cookie跨域访问
一.前言 随着项目模块越来越多,很多模块现在都是独立部署.模块之间的交流有时可能会通过cookie来完成.比如说门户和应用,分别部署在不同的机器或者web容器中,假如用户登陆之后会在浏览器客户端写入c ...
- 解决cookie跨域访问.2
v一.前言 随着项目模块越来越多,很多模块现在都是独立部署.模块之间的交流有时可能会通过cookie来完成.比如说门户和应用,分别部署在不同的机器或者web容器中,假如用户登陆之后会在浏览器客户端写入 ...
- cookie 跨域访问的解决方案
Cookie 同域单点登录 最近在做一个单点登录的系统整合项目,之前我们使用控件实现单点登录(以后可以介绍一下).但现在为了满足客户需求,在不使用控件情况下实现单点登录,先来介绍一下单点登录. ...
- 实现cookie跨域访问
需求:A系统(www.a.com)里设置一个浏览器cookie,B系统(www.b.com)需要能够访问到A设置的cookie. 通过HTML SCRIPT标签跨域写cookie: 由于html的sc ...
- cookie单点登录(跨域访问)
新近一家公司上来就让做oa,要求嵌入公司现有系统模块,自然而然想到模拟post单点登录对方系统新建单点登陆页面保存session,然现有系统都有用cookie保存用户信息,故保存本地cookie……测 ...
- asp.net关于Cookie跨域(域名)的问题
Cookie是一个伟大的发明,它允许Web开发者保留他们的用户的登录状态.但是当你的站点有一个以上的域名时就会出现问题了.在Cookie规范上 说,一个cookie只能用于一个域名,不能够发给其它的域 ...
- 关于Cookie跨域的问题
Cookie是一个伟大的发明,它允许Web开发者保留他们的用户的登录状态.但是当你的站点有一个以上的域名时就会出现问题了.在Cookie规范上说,一个cookie只能用于一个域名,不能够发给其它的域名 ...
- 关于Cookie跨域的问题研究
Cookie是一个伟大的发明,它允许Web开发者保留他们的用户的登录状态.但是当你的站点有一个以上的域名时就会出现问题了.在Cookie规范上说,一个cookie只能用于一个域名,不能够发给其它的域名 ...
- cookie跨域问题汇总
一.通过nginx反向代理 通过nginx反向代理后,使得浏览器认为访问的资源都是属于相同协议,域名和端口的. 详细见:<nginx实现跨域访问> 二.jsonp方式请求 v jquery ...
随机推荐
- Arduino Serial库的使用
1 Serial.begin() 2 Serial.end() 3 Serial.available() 4 Serial.read() 5 Serial.peek() 6 Serial.flush( ...
- 高性能MySQL笔记-第5章Indexing for High Performance-005聚集索引
一.聚集索引介绍 1.什么是聚集索引? InnoDB’s clustered indexes actually store a B-Tree index and the rows together i ...
- centos 6.5安装 redis
版本:redis-2.8.19.tar.gz 检查下面依赖是否安装,如果没有要先安装,不然会有异常. yum install gcc-c++ yum install -y tcl. .获取安装文件 r ...
- 4、Brief primer and lexicon for PacBio SMRT sequencing
转载:http://pacbiofileformats.readthedocs.io/en/5.1/Primer.html 转载:http://pacbiofileformats.readthedoc ...
- 异常日志记录 DDLog
项目中如果想把异常捕获再写入文件,有个十分容易使用的库DDLog. 首先导入库,在git上下载. 一:在项目初始化指定全局LogLeve ,一般在xxxapp.m中 staticconstint dd ...
- c++线程调用python
c++调用python,底层就似乎fork一个子进程启动一个python的解释器,执行python文件,由于python解释器维护了一个内部状态,所以如果c++程序是多线程,每个线程都调用python ...
- Bugly集成指南
官网: https://bugly.qq.com/v2/,用QQ扫码登录即可 1.创建应用,获取APPID 2.自动集成 2.1 在Module的build.gradle文件中添加依赖和属性配置: d ...
- SQL Server 2014 清理日志
USE [master] GO ALTER DATABASE [TempTestDb02] SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE [Te ...
- FPM工具 实战定制nginx包
FPM主要特点: 把一种包打包成另一种包的格式 支持的源类型包 DIR 将目录打包成所需要的类型,可以用于源码编译的安装包. RPM 对rpm进行转换 gem 对rubygem包进行转换. ...
- npm 还是 yarn ?
技术选型时这个问题总是困扰我,今天看到一篇文章,详细的解释了 npm 和 yarn 在性能,安全,支持性和使用难易度上的区别,看完之后这个问题终于有一个答案: 如果你在意速度和 UI,选 yarn,如 ...