sso跨域写cookie的一段js脚本

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<script>
  var setcookitarray = "";
  setcookitarray = "[\"http://passport.a.com/main/setCookie.do?domain=\",\"http://passport.a.com/main/setCookie/main/setCookie.do?domain=.b.cn\",\"http://passport.a.com/main/setCookie/main/setCookie.do?domain=.c.com\",\"http://passport.a.com/main/setCookie/main/setCookie.do?domain=.d.cn\"]";
  setcookitarray = eval(setcookitarray);
  var setcookitarrayln = setcookitarray.length;
  //alert(setcookitarrayln);
  var notifyurl_list=setcookitarray;
  var ll = setcookitarrayln;
  var params="yqVg1ennsNnxydEq4azcAP6TjhR90QCEUtB7gs45H08ltXBUNeoy_GczVyqC6cvZEwPGN0Al8XWKDsIt60YO1QsUlbK0Fip73Xz@7djs3ZmhBbAdanMbUH1Y@MVD2@@keR0S7njF5xiy@m6zaRWYNMbJ23jLDSrvEtMj0BExfYvFFe@twp3RHfD41dJOQzWz@nf8i@tJB12hNLIG4oW0eA==";
  var failuretime=2678400;
  var backurl="http://www.test.com";
  //alert("1111");

  loginALL(notifyurl_list, ll-1, backurl, params,failuretime);
  //alert("2222");
  function loginALL(notifyurl_list,num,backurl,params,failuretime) {
        var u = notifyurl_list[num];
		 alert("url:"+(num)+"-"+u);
        if (typeof u != "undefined") {
		    //alert("4444:"+notifyurl_list[num]);
            var url = notifyurl_list[num]+"&failuretime="+failuretime+"&val="+params;
			//alert("url:"+url);

			//动态生成script脚本标签执行url页面
			var login=request("loginScript"+num,url);
			num--;
            if (num < 0) {

                window.setTimeout(function() {
                    window.location.href = backurl;
                }, 2000);

            }
			else
			{
				loginALL(notifyurl_list, num, backurl, params,failuretime);
			}

        }
  }

  function request(id,url){
     oScript = document.getElementById(id);
     var head = document.getElementsByTagName("head").item(0);
     if (oScript) {
        head.removeChild(oScript);
     }
     oScript = document.createElement("script");
     oScript.setAttribute("src", url);
     oScript.setAttribute("id",id);
     oScript.setAttribute("type","text/javascript");
     oScript.setAttribute("language","javascript");
     head.appendChild(oScript);
     return oScript;
}

</script>

<body>

</body>

主要通过 递归调用 和 动态创建script标签来实现页面的调用。

				
时间: 2024-07-28 12:56:06

sso跨域写cookie的一段js脚本的相关文章

sso跨域写cookie的一段js脚本(推荐)_javascript技巧

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script> var setcookitarray = ""; setcookitarray = "[\"http://passport.a.com/main/setCookie.do?domain=\",\"http://passport.

asp.net(C#)跨域及跨域写Cookie问题_实用技巧

解决方法是: 复制代码 代码如下: //www.B.com里的被调用的页面需要写P3P头,从而解除IE对写Cookie的阻止 context.Response.AddHeader("P3P", "CP=CAO PSA OUR"); //www.A.com里通过ajax调用www.B.com里的内容时,是跨域访问,需要使用jsonp,为配合其工作需要添加下面两句,生成jsonp返回 context.Response.ContentType = "text/p

php 怎么跨域写cookie实现同步登陆代码

//加上  代码如下 复制代码 header('p3p: cp="cura adma deva ps教程ao psdo our bus uni pur int dem sta pre com nav otc noi dsp cor"'); //方法二针对二级域名  代码如下 复制代码 setcookie('loaddomain','http://'.$url,time()+3600*24,'/','.111cn.net'); //这样的话,所有111cn.net的二级域名都同时登陆了.

ie7下利用ajax跨域盗取cookie的解决办法_AJAX相关

研究了一下午,第一个难题是ajax跨域提交数据,可以用web代理来解决,http://192.168.8.108上的a.htm代码: <script>  function getXmlHttpRequest(){         if(window.ActiveXObject){              var ieArr=["Msxml2.XMLHTTP","Microsoft.XMLHTTP"];                          

ie7下利用ajax跨域盗取cookie的解决办法

研究了一下午,第一个难题是ajax跨域提交数据,可以用web代理来解决,http://192.168.8.108上的a.htm代码: <script>  function getXmlHttpRequest(){         if(window.ActiveXObject){              var ieArr=["Msxml2.XMLHTTP","Microsoft.XMLHTTP"];                          

Ajax跨域访问Cookie丢失问题的解决方法

ajax跨域访问,可以使用jsonp方法或设置Access-Control-Allow-Origin实现,关于设置Access-Control-Allow-Origin实现跨域访问可以参考之前我写的文章<ajax 设置Access-Control-Allow-Origin实现跨域访问> 1.ajax跨域访问,cookie丢失 首先创建两个测试域名 a.fdipzone.com 作为客户端域名 b.fdipzone.com 作为服务端域名 测试代码 setcookie.PHP 用于设置服务端co

php利用P3P头实现跨域设置cookie

在开发中,我们碰到的跨域主要还是纠结在IE,页面中的IFRAME或者FRAME或者JS跨域的时候,IE有安全策略限制页面不带cookie,但是如果我们加上P3P,就没有这策略的限制.这也是P3P来突破跨域的可行前提,其实在firefox chorme类浏览器里面是没有这个限制的. 首先我们了解一下P3P是什么? P3P(Platform for Privacy Preferences)是W3C公布的一项隐私保护推荐标准,以为用户提供隐私保护. P3P标准的构想是:Web 站点的隐私策略应该告之访

Js跨域同步cookie

 Js跨域同步cookie怎么实现 document.cookie = "name=" + "value;" + "expires=" + "datatime;" + "domain=" + "" + "path=" + "/path" + "; secure"; //name Cookie名字 //value Cookie值

java-Java跨域共享cookie问题

问题描述 Java跨域共享cookie问题 比如像www.test1.com与www.test2两个完全不同的域 共享一个cookie 怎么实现啊 都看好多天了 都没有一个合适的方法,求来个大神解救啊 .....小弟万分感谢啊! 解决方案 跨顶级域不行,浏览器不会发送一个域名的cookie到另外一个域的,只能跨n级子域名,将cookie domain设置为顶级域名 要想共享cookie,你只能登陆成功的时候用script或者img对象加载另外一个域名的api接口,将cookie信息发送到这个接口