实现cookie跨域访问

摘要:
通过HTMLSCRIPT标记跨域编写cookie:由于html脚本标记的src属性,它可以支持访问任何域中的资源,并通过脚本发送get类型网络请求以获取资源。系统会添加:通过www.a.com域中的src访问域b的set_cookie方法,并调用域b的控制器方法将cookie写入域b。

  需求:A系统(www.a.com)里设置一个浏览器cookie,B系统(www.b.com)需要能够访问到A设置的cookie。

  通过HTML SCRIPT标签跨域写cookie:

    由于html的script标签的src属性,可以支持访问任何域的资源,通过script发起一个get类型的网络请求,获取资源。

    A系统里加入:

 <script type="text/javascript" src="http://www.b.com/set_cookie?cname=token&cval=test123"></script> 

    通过src在www.a.com域中访问b域的set_cookie方法,调用b的controller方法将cookie写入到b域中。

@Controller
@RequestMapping("/set_cookie")
public class SetCookieController {
    private final static int cookieMaxAge = 60 * 60 * 24 * 7 * 2;
    /**  
     * 其它域通过页面script标签引用此controller,script标签发起的请求是get类型  
     */  
    @RequestMapping
    protected void index(HttpServletRequest request,  
            HttpServletResponse response) throws ServletException, IOException {  
        // 将要写入的cookie项,调用者通过参数传递  
        String cookieName = request.getParameter("cname");
        String cookieVal = request.getParameter("cval");  
  
        // 生成cookie   
        Cookie cookie = new Cookie(cookieName, cookieVal);  
        //存两周(秒为单位)
        cookie.setMaxAge(cookieMaxAge);
        //cookie有效路径是网站根目录
        cookie.setPath("/");
        //向客户端写入
        response.addCookie(cookie);
    }  

}

    这样在b中就能访问到a设置的cookie。

免责声明:文章转载自《实现cookie跨域访问》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇md5sum命令详解P1597 语句解析下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

web前端页面中异步使用百度地图API

<div id="allmap"></div> 1 //百度地图API功能 2 functionloadJScript() { 3 var script = document.createElement("script"); 4 script.type = "text/javascript"; 5 script.src = "htt...

Linux curl命令参数详解(6/23)

linux curl是通过url语法在命令行下上传或下载文件的工具软件,它支持http,https,ftp,ftps,telnet等多种协议,常被用来抓取网页和监控Web服务器状态。 在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称ur...

localStorage兼容方案

localStorage是H5的存储方案,各大浏览器支持都相当不错,唯一悲催的就是IE,这个浏览器界的另类总是显得格格不入。 IE “Internet选项”->“安全”中有一个“启动保护模式”的单选项,在选中的情况下localStorage是无法使用的,直接提示“拒绝访问”,就算不勾选,下次打开IE时也很有可能弹出“是否启用保护模式”的提示,此时除了...

thinkphp过滤xss

什么是XSS:这里通俗的讲,就像是SQL注入一样,XSS攻击也可以算是对HTML和JS的一种注入。你本来希望得到是从用户那得到一段有用的文本文字,但用户提交给你的却是别有用心的可执行javasc ript或其它脚本(这里并没有把破坏样式或文档文本当作攻击),当你再把这些提交的内容显示到页面上时,XSS攻击就发生了。 关于XSS的攻击方式和场景层出不穷,本...

js设置滚动条位置

JS控制滚动条的位置: window.scrollTo(x,y); 竖向滚动条置顶(window.scrollTo(0,0); 竖向滚动条置底 window.scrollTo(0,document.body.scrollHeight); JS控制TextArea滚动条自动滚动到最下部 document.getElementById('textare...

chromedriver的使用

1.调用chrome driver System.setProperty("webdriver.chrome.driver", "C:/Program Files (x86)/Google/Chrome/Application/chromedriver.exe"); 2.创建chromeOption对象 ChromeOptions chromeOptio...