Js跨一级域名同步cookie
1. 纯Js同步两个域名下的cookie
document.cookie = "name=" + "value;" + "expires=" + "datatime;" + "domain=" + "" + "path=" + "/path" + "; secure";
//name Cookie名字
//value Cookie值
//expires 有效期截至(单位毫秒)
//path 子目录
//domain 有效域
//secure 是否安全
拿淘宝与天猫举例,淘宝登录后跳转到天猫页面,天猫页面有一个iframe,请求任意页面
<iframe src='http://localhost:14373/test/Index' width='' height='' style="display:none"></iframe>
淘宝页面中js获取当前页面的cookie并作为参数跳转回天猫页面
window.location = "http://localhost:20272/GetCookie/Index?" + document.cookie;
天猫页面获取url中的地址并将cookie写入本域名下
var url = window.location.toString();//获取地址
var get = url.substring(url.indexOf("liuph"));//获取变量和变量值
var idx = get.indexOf("=");//获取变量名长度
if (idx != -) {
var name = get.substring(, idx);//获取变量名
var val = get.substring(idx + );//获取变量值
setCookie(name, val, );//创建Cookie
}
2. 经过后台处理同步cookie
天猫页面直接请求淘宝的后台方法
$.ajax({
type: "GET",
dataType: 'jsonp',
jsonp: 'jsonp_callback',
url: 'http://localhost:14373/test/GetString?cookie=?',
success: function (da) {
alert(da.name + "|" + da.value);
}, error: function (){
alert("ERROR");
}
});
淘宝后台代码
public void GetString()
{
HttpCookie cookie = Request.Cookies["liuph"];
var response = HttpContext.Response;
response.ContentType = "text/json";
string str = Request.QueryString["cookie"];//JS接受变量名
response.Write(str + "({\"name\":" + "\"" + cookie.Name + "\"" + ",\"value\":" + "\"" + cookie.Value + "\"})");//返回数据
}
ok,同步结束
Js跨一级域名同步cookie的更多相关文章
- 设置二级域名共享一级域名Cookie和删除共享Cookie
设置共享Cookie: 二级域名要想共享一级域名的cookie,只需要设置cookie.Domain = ".一级域名.com"; 删除共享Cookie: HttpCook ...
- 通过HostOnly Cookie为Cookie正确的设置一级域名
前言 用户行为分析,最重要的一点就是通过埋点准确的获取用户的Cookie,那么这个Cookie到底怎么设置呢?那么如果面对的是站群,用户Cookie又该怎么设置,才能让访客量和新访客量准确无误呢? 接 ...
- cookie跨域和js跨域问题
js跨域:主机名,协议,端口号只要有任何一个不同,就不能成立
- 前端Js跨域方法汇总—剪不断,理还乱,是跨域
1.通过jsonp跨域2.通过修改document.domain来跨子域(iframe)3.隐藏的iframe+window.name跨域4.iframe+跨文档消息传递(XDM)5.跨域资源共享 C ...
- 5种处理js跨域问题方法汇总(转载)
1.JSONP跨域GET请求 ajax请求,dataType为jsonp.这种形式需要请求在服务端调整为返回callback([json-object])的形式.如果服务端返回的是普通json对象.那 ...
- JS跨域(ajax跨域、iframe跨域)解决方法及原理详解(jsonp)
这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...
- 【js跨域】js实现跨域访问的几种方式
这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...
- 【前端】【转】JS跨域问题总结
详情见原博客:详解js跨域问题 概念:只要协议.域名.端口有任何一个不同,都被当作是不同的域. 跨域资源共享(CORS) CORS(Cross-Origin Resource Sharing)跨域资源 ...
- 【转】JS跨域(ajax跨域、iframe跨域)解决方法及原理详解(jsonp)
这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...
随机推荐
- jboss项目设置域名
1.在jboss-web.xml中添加<virtual-host>www.ceshi.com</virtual-host> <jboss-web> <cont ...
- dede其他栏目页的logo没有完整显示怎么办?
在首页完全没有问题,可是点击关于我们.联系我们.加入我们的时候logo图标是缺失的,这时候怎么办? 其实这个是css样式的问题,只要找到相对应页面的css,改一下他们的宽就可以了,如果高不够就自己调整 ...
- 用antlr4来实现《按编译原理的思路设计的一个计算器》中的计算器
上次在公司内部讲<词法分析——使用正则文法>是一次失败的尝试——上午有十几个人在场,下午就只来了四个听众. 本来我还在构思如何来讲“语法分析”的知识呢,但现在看来已不太可能. 这个课程没有 ...
- python计算auc指标
1.安装scikit-learn 1.1Scikit-learn 依赖 Python (>= 2.7 or >= 3.3), NumPy (>= 1.8.2), SciPy (> ...
- CAD得到所有实体2
主要用到函数说明: IMxDrawSelectionSet::Select2 构造选择集.详细说明如下: 参数 说明 [in] MCAD_McSelect Mode 构造选择集方式 [in] VARI ...
- nginx反向代理与负载均衡讲解
Nginx的代理功能与负载均衡功能是最常被用到的,关于nginx的基本语法常识与配置已在上篇文章中有说明,这篇就开门见山,先描述一些关于代理功能的配置,再说明负载均衡详细. Nginx代理服务的配置说 ...
- 解决header,footer等HTML5标签在IE(IE6/IE7/IE8)无效的方法
HTML5的语义化标签以及属性,可以让开发者非常方便地实现清晰的web页面布局,加上CSS3的效果渲染,快速建立丰富灵活的web页面显得非常简单. HTML5的新标签元素有: <header&g ...
- 面向对象程序设计--Java语言第三周编程题:查找里程
查找里程 题目内容: 下图为国内主要城市之间的公路里程: 你的程序要读入这样的一张表,然后,根据输入的两个城市的名称,给出这两个城市之间的里程. 注意:任何两个城市之间的里程都已经给出,不需要计算经第 ...
- Java垃圾回收简介
Java关键术语 JavaAPI:一系列帮助开发者创建Java应用程序的封装好的库. Java 开发工具包 (JDK):一系列工具帮助开发者创建Java应用程序.JDK包含工具编译.运行.打包.分发和 ...
- Python学习第二阶段day1 内置函数,序列化,软件目录开发规范
内置函数 1.abs() 求绝对值 2.all() 所有元素为真才返回真 all( [1,1,2,3,-1] ) 值为True 3.any() 所有元素为假才返回假 any([0,0,0 ...