- 子域名下:
这里输入代码子域名下的cookie可以通过设置cookie.setDomain("xxx")(注:xxx为根域名,例如text.com),来实现共享cookie;
- 不同域名下:
通过jsonp请求.do来返回参数:
var url = 'test.do?jsoncallback=?'; $.getJSON(url, params, function(json){ });
jsoncallback=? 该段表示,返回参数,会自动生成一个返回函数;
示例:
客户端
$.getJSON("http://test.b.com/tools/isLogin.jsp?jsoncallback=?",function(data){ alert(data); });
服务器端:isLogin.jsp 把数据封装成 json的格式
String jsoncallback = request.getParameter("jsoncallback");out.print(jsoncallback+"({userid:"+userid+",muserid:"+muserid+"})");
通过$.getScript请求来返回cookie:
例:test.a.com网站需要获取test.b.com的cookie,
第一步:首先在test.b.com下写一个请求jsp,并且以js的格式输出到页面:
String userid = CookieUtil.getCookieNoDes(request, "chatName"); String muserid = MCookieUtil.getCookie(request, "m-userid"); out.print("var userCookie={userid:'"+userid+"',muserid:'"+muserid+"'};");
输出的格式:
var userCookie={userid:'null',muserid:'null'};
第二步:在test.a.com下用$.getScript获取请求:
$.getScript('http://test.b.com/isLogin.jsp?'new Date(), function(){ console.log(userCookie.userid,userCookie.muserid); });
从数据显示,已经从test.b.com下获取到cookie的值.
demo下载地址:链接: 密码:g9qi