我是靠谱客的博主 感性面包,最近开发中收集的这篇文章主要介绍跨域获取cookie方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

  1. 子域名下:

这里输入代码子域名下的cookie可以通过设置cookie.setDomain("xxx")(注:xxx为根域名,例如text.com),来实现共享cookie;

  1. 不同域名下:

通过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下载地址:链接:http://pan.baidu.com/s/1nv83bxn 密码:g9qi

转载于:https://my.oschina.net/u/3500033/blog/1528645

最后

以上就是感性面包为你收集整理的跨域获取cookie方法的全部内容,希望文章能够帮你解决跨域获取cookie方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部