码迷,mamicode.com
首页 > 其他好文 > 详细

基于Cookie跨域的单点登录问题

时间:2014-08-20 16:06:22      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   java   os   io   文件   

由于项目中,需要用的单点登录,主要的思路是:系统1:用户名密码-->写入Cookie-->其他系统读取Cookie。
1、在同一个服务器下的Cookie共享
@Component("userLoginAction")
@Namespace("/userLogin")
@ParentPackage("json-default")
public class UserLoginAction extends ActionSupport{
    @Action(value="saveCookie",results={
            @Result(name=SUCCESS,location="/WEB-INF/page/success.ftl")    
        })
    public String saveCookie(){
        Cookie cook=new Cookie("userName","lisi");
        cook.setPath("/");
        cook.setMaxAge(-1);
        ServletActionContext.getResponse().addCookie(cook);
        return SUCCESS;
    }
}

 

cook.setPath("/");设置在同一个webapp下
cook.setMaxAge(-1);设置关闭浏览器后清除Cookie。

2、跨域Cookie共享,首先这里说的Cookie跨域不是跨多域,而是跨子域。
在host文件中设置本地域名。bubuko.com,布布扣
package cn.action;

import javax.servlet.ServletContext;
import javax.servlet.http.Cookie;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.springframework.stereotype.Component;

import com.opensymphony.xwork2.ActionSupport;

@Component("userLoginAction")
@Namespace("/userLogin")
@ParentPackage("json-default")
public class UserLoginAction extends ActionSupport{
    @Action(value="saveCookie",results={
            @Result(name=SUCCESS,location="/WEB-INF/page/success.ftl")    
        })
    public String saveCookie(){
        Cookie cook=new Cookie("userName","lisi");
        cook.setPath("/");
        cook.setMaxAge(-1);
        cook.setDomain(".demo.com");
        ServletActionContext.getResponse().addCookie(cook);
        return SUCCESS;
    }
}

 

cook.setDomain(".demo.com");设置的共享子域名 .demo.com
就ok了。在浏览器中可以查看到该Cookie

bubuko.com,布布扣
 
 

基于Cookie跨域的单点登录问题,布布扣,bubuko.com

基于Cookie跨域的单点登录问题

标签:style   blog   http   color   java   os   io   文件   

原文地址:http://www.cnblogs.com/volare/p/3924643.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!