凡客诚品的跨域获取cookies方法

时间:2013-08-12 11:22 来源:互联网 作者:源码搜藏 收藏

没事干的时候把凡客的首页扣下来研究了一下,在凡客的js代码里发现了一种跨域获取cookies的方法,基本原理是凡客的server端提供一个页面输出cookies字符串,client端采用jsonp的格式获取该cookies字符串。 程序演示 你也可以在自己的机器上试下,不过你首先

没事干的时候把凡客的首页扣下来研究了一下,在凡客的js代码里发现了一种跨域获取cookies的方法,基本原理是凡客的server端提供一个页面输出cookies字符串,client端采用jsonp的格式获取该cookies字符串。

程序演示

你也可以在自己的机器上试下,不过你首先得在凡客上有帐号,这样才能看到效果。

下面一段是凡客中一个跨域获取cookies的函数:

01 function setWelcome() {
02     $.getScript("http://my.vancl.com/Usercenter/GetUserName.ashx"function() {
03     if (typeof (data) != undefined && typeof (data) != "undefined" && data != "") {
04         $("#login").html("<a class='top'  href='https://login.vancl.com/login/UserLoginOut.aspx' target='_parent' >退出登录</a>");
05         $("#welcome").html("您好,<a class='top'  href='http://my.vancl.com/' >" + data + "</a>。<a class='top'  href='https://login.vancl.com/Login/UserLoginOut.aspx?'" + window.location.href +"  target='_parent' >退出登录</a>");
06         }
07         else {
08             return;
09         }
10     }
11 );

本页的演示效果所用代码如下:

01 <div style="text-indent:2em;"><input type="button" value="运行" id="render" /></div>
02 <script type="text/javascript">
03 // <![CDATA[
04 document.getElementById('render').onclick=function(){
05    $.getScript("http://my.vancl.com/Usercenter/GetUserName.ashx"function()
06    {
07         if (typeof (data) != undefined && typeof (data) != "undefined" && data != "")
08         {
09             alert("你在凡客登录的用户名是:"+data);
10         }
11         else
12         {
13             alert("你还没有登录凡客!");
14             return;
15         }
16     });
17 }
18 // ]]>
19 </script>

在这里记录下~


jQuery技术阅读排行

最新文章