cookie 跨域访问
2024-08-28 02:10:09
废话不知道该说些什么。。。先看代码吧。
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
最新文章
- Jquery知识点梳理
- 【java】jackson 中JsonFormat date类型字段的使用
- 编写高质量JS代码的68个有效方法(五)
- ATS连接 https
- 矩阵快速幂 POJ 3070 Fibonacci
- php调用whois接口域名查询
- IT项目管理的六种错误思维
- java关键字 (jdk6),各自的含义是什么?
- Python标准模块--importlib
- Spark算子--partitionBy
- angular的时间指令 以及防止闪烁问题
- Quartz+ssm注解方式的最最最最简单使用
- Kubernetes fluentd+elasticsearch+kibana
- C#Note13:如何在C#中调用python
- TOML简介 (转) TOML的由来
- mybatis 插件安装与使用
- Scala java maven开发环境搭建
- python学习站点
- 关于Behold the Kickmen (球员登场)
- 第108天:Ajax中XMLHttpRequest详解
热门文章
- ZROI2018提高day6t2
- 数据结构_sfdg(小F打怪)
- spring第二篇
- 短信部分之PDU简介及其格式(转)
- python使用基础(win10)
- 21天网站建设实录 (雨辰资讯) 高清pdf扫描版​
- <;a>;实现按钮的javascript+jquery编程实例
- java eclipse导出可运行jar包(java服务)和导入
- Linq to Objects for Java
- U-Net: Convolutional Networks for Biomedical Image Segmentation(理解+github代码)