zoukankan      html  css  js  c++  java
  • 实现cookie跨域访问

      需求: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。

  • 相关阅读:
    套接字IO超时设置和使用select实现超时管理
    登录页面2
    tornado后台小框架
    form表单,登录用户,密码,按钮,提交、重置
    图标,空格,大小尖括号,段落,换行,标题,div白板,span白板
    html中head示例
    centos7中mysql不能输入中文问题的解决
    ORM多对多的实现
    多外键关联
    ORM外键关联
  • 原文地址:https://www.cnblogs.com/lylife/p/6097662.html
Copyright © 2011-2022 走看看