`
jiony
  • 浏览: 184911 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

cookie设置多个应用共享

阅读更多
正常的cookie只能在一个应用
中共享,即一个cookie只能由创建它的应用获得。 

1.可在同一应用服务器
内共享方法:设置cookie.setPath("/"); 

本机tomcat/web
app下面有两个应用:cas和webapp_b, 

1)原来在cas下面设置的cookie,在webapp_b下面获取不到,path默认是产生cookie的应用的路径。 

2)若在cas下面设置cookie的时候,增加一条cookie.setPath("/");或者cookie.setPath("/webapp_b/");就可以在webapp_b下面获取到cas设置的cookie了。 

3)此处的参数,是相对于应用服务
器存放应用的文件
夹
的根目录而言的(比如tomcat下面的webapp),因此cookie.setPath("/");之后,可以在webapp文件夹下的所有应用共享
cookie,而cookie.setPath("/webapp_b/");是指cas应用设置的cookie只能在webapp_b应用下的获得,即
便是产生这个cookie的cas应用也不可以。 

4)设置cookie.setPath("/webapp_b/jsp")或者cookie.setPath("/webapp_b/jsp/")的时
候,只有在webapp_b/jsp下面可以获得cookie,在webapp_b下面但是在jsp文件夹外的都不能获得cookie。 

5)设置cookie.setPath("/webapp_b");,是指在webapp_b下面才可以使用cookie,这样就不可以在产生cookie的应用cas下面获取cookie了 

6)有多条cookie.setPath("XXX");语句的时候,起作用的以最后一条为准。 


2.跨域共享cookie的方法:设置cookie.setDomain(".jszx.com"); 

A机所在的域:home.langchao.com,A有应用cas 

B机所在的域:jszx.com,B有应用webapp_b 

1)在cas下面设置cookie的时候,增加cookie.setDomain(".jszx.com");,这样在webapp_b下面就可以取到cookie。 

2)这个参数必须以“.”开始。 

3)输入url访问webapp_b的时候,必须输入域名才能解析。比如说在A机器输入:http://lc-bsp.jszx.com:8080
/webapp_b,可以获取cas在客户端设置的cookie,而B机器访问本机的应用,输入:http://localhost:8080
/webapp_b则不可以获得cookie。 

4)设置了cookie.setDomain(".jszx.com");,还可以在默认的home.langchao.com下面共享。 


<%
String username=request.getParameter("username");
String password=request.getParameter("password");
if(!com.tmailer.common.util.StringUtil.isNullOrEmpty(username) && !com.tmailer.common.util.StringUtil.isNullOrEmpty(password)){
    Cookie passwordCookie=new Cookie(username.split("@")[0],password);
    passwordCookie.setMaxAge(-1);
    passwordCookie.setPath("/") ;  
    response.addCookie(passwordCookie);
}
%>
 //begin patch by zhongdh 20101117 switch oldSystem
    var email=appCtxt.get(ZmSetting.USERNAME);
    var username = email.split("@")[0];
    var userp=Cookies.get(username);
    var md5p=MD5(userp);
    var oldSystemUrl="http://xxxx/Mail/";
    oldSystemUrl=oldSystemUrl+"loginnew.asp?fm_strAccPrefix="+username;
    oldSystemUrl=oldSystemUrl+"&fm_strDomain=my.gov.cn&fm_strPassword="+md5p;
    //end patch by zhongdh 20101117 switch oldSystem
 
 
  • js.zip (2.5 KB)
  • 下载次数: 7
分享到:
评论

相关推荐

    C# cefsharp 多账号同时登陆,设置cookie隔离,修改部分浏览器指纹

    在IT领域,尤其是在Web开发和自动化测试中,模拟多个用户登录和管理Cookie是常见的需求。C#结合CEFSharp库提供了一种解决方案,使得开发者能够创建一个具有浏览器功能的应用程序,并且能够处理多账户同时登录的问题...

    WebBrowser跨进程共享Cookie

    当涉及到跨进程共享Cookie时,我们面临的问题是如何在这些独立的进程中同步和交换Cookie信息,以确保用户在多个WebBrowser实例间的会话一致性。 解决这个问题通常有以下几种策略: 1. **使用.NET Framework的...

    webview与服务器共享cookie操作

    6. **跨域问题**:如果WebView需要加载多个域名的页面,可能会遇到跨域cookie的问题。需要确保服务器设置允许跨域,并在客户端正确处理。 7. **隐私策略**:注意遵循相应的隐私政策,尤其是在处理用户敏感信息时,...

    CefShafp浏览器多开-Cookie独立

    总结来说,这个工具利用CefSharp库实现了基于Chromium的多浏览器实例,每个实例的Cookie管理独立,提供了一种方便的方式来进行多会话管理,比如测试、数据分析或是其他需要多个浏览器环境的应用场景。用户可以通过...

    SSO单点登录【基于cookie二级域名下跨域共享】

    SSO(Single Sign-On)单点登录是一种身份验证机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需再次进行身份验证。在基于Cookie的二级域名下跨域共享SSO实现中,核心概念是利用Cookie的特性来实现用户...

    一个服务器搭多个tomcat导致session丢失,或者同一个IP不同端口,多个应用的session会冲突解决方法

    一个服务器上搭建了多个tomcat或者weblogic,端口不一样,同时启动访问时session丢失。...原来都是cookie惹的祸,它不会区分端口,造成这多个站点不断的后来的覆盖前面的,从而造成session的丢失。

    nginx实现多个tomcat7直接session共享所需jar包

    标题中的“nginx实现多个tomcat7直接session共享所需jar包”指的是在分布式系统环境中,使用Nginx作为反向代理服务器,将用户请求分发到多个Tomcat7应用服务器上...在分布式系统中,session共享是一...

    Cookie的应用.doc

    这个文档“Cookie的应用.doc”显然详细探讨了如何在实际操作中创建和管理Cookie。下面,我们将深入探讨Cookie的基本概念、创建过程以及其在Web应用程序中的应用。 **Cookie基本概念** Cookie是由服务器端发送到用户...

    在两个ASP.NET应用程序之间共享身份验证Cookie

    为使Cookie能在多个应用程序之间共享,需要设置Cookie的`Domain`属性。将Cookie的域设置为所有应用程序的公共父域,如`".example.com"`,这样,所有位于`.example.com`下的子域都能访问这个Cookie。 ```csharp ...

    Qt 获取Cookie

    在实际应用中,你可能需要根据具体需求处理更复杂的情况,比如处理多个Cookie、管理过期Cookie、或者在不同URL间共享Cookie。记住,始终要尊重用户的隐私权,只在必要时使用Cookie,并确保它们的安全性。

    C#不同域名之间的Session共享

    Session共享的主要目的是在多个网站或应用之间保持用户的登录状态和其他个性化信息,提高用户体验。默认情况下,ASP.NET的Session是基于Cookie的,每个Cookie都有一个特定的域限制,这意味着Session信息不能在不同的...

    跨域获取cookie,多个网站实现一键登录.pdf

    跨域获取Cookie是互联网应用中实现单点登录(Single Sign-On, SSO)的一种常见技术,尤其在多网站协作或拥有多个子域名的大型系统中。这里的例子展示了如何通过JavaScript和PHP实现在A网站登录后,B网站能够自动识别...

    jscript中使用cookie

    由于Cookie基于域名,所以它可以在同一个域名下的多个网页间共享,但不能跨域使用。在Windows操作系统中,Cookie文件通常位于`documents and settings\userName\cookie\`目录下,文件名为`userName@domain.txt`。 *...

    memcached实现多个tomcat 共享一个session

    标题中的“memcached实现多个tomcat共享一个session”是指在分布式系统中,通过使用memcached作为session存储介质,实现多台Tomcat服务器之间的session共享。这样可以确保用户在集群中的任意一台服务器上登录后,其...

    电信设备-cookie信息共享方法及系统.zip

    《电信设备-cookie信息共享方法及系统》 在现代通信领域,电信设备与网络服务的结合日益紧密,其中cookie信息的管理与共享成为了一个关键...随着技术的发展,未来我们有望看到更多创新的cookie管理和共享解决方案。

    15-cookie基础与应用.pptx

    - **过期时间**:创建Cookie时可以设置一个过期时间,超过这个时间,Cookie将被浏览器自动删除。如果不设置,则默认为会话Cookie,只在浏览器关闭时消失。 **3. 在JavaScript中使用Cookie** **设置Cookie** 在...

    .net最完整的cookie操作类

    - 可能还包括了Cookie分段(由于大小限制,大型Cookie可能需要分割成多个)、Cookie哈希验证以确保安全、自定义编码解码等高级特性。 在实际应用中,这样的Cookie操作类可以使代码更加简洁、可维护。例如,可以...

    设置跨域名的Cookie

    但在某些场景下,如多站点共享用户信息或单点登录系统,跨域Cookie就显得十分必要。本文将探讨如何使用ASP技术来实现跨域Cookie。 **Cookie基础** 1. **定义与存储**:Cookie是服务器发送到用户浏览器并存储在本地...

Global site tag (gtag.js) - Google Analytics