【问题标题】:how to work with cross domain cookie or session in java如何在 java 中使用跨域 cookie 或会话
【发布时间】:2013-10-24 05:58:35
【问题描述】:

我正在使用 pdk jdeveloper portlet。

我已经在tomcat服务器上部署了ear,主机为www.test1.com:8080/

现在我在具有相同主机但不同端口的 Oracle 服务器上使用它的提供程序,例如 www.test1.com:9090/

所以在这里我无法在www.test1.com:9090/ 上使用 cookie 或会话的东西

我已经使用 javascript 设置了 cookie,如下所示:

function setCookie(c_name,value,exdays)
{
    var exdate=new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
    document.cookie=c_name + "=" + c_value;
}

setCookie("USER","test",365);

现在尝试在 portlet 页面上获取此 cookie,如下所示。

 PortletRenderRequest pReq = (PortletRenderRequest)
    request.getAttribute(HttpCommonConstants.PORTLET_RENDER_REQUEST);
    try 1: Cookie[] cookies =request.getCookies(); // get null
    try 2: Cookie[] cookies = (Cookie[])pReq.getCookies(); // get null

我怎样才能做到这一点?请帮忙。

【问题讨论】:

    标签: java pdk


    【解决方案1】:

    您必须在 cookie 上设置域。 link,这给了你一个好的开始。我读了这篇文章,发现跨子域共享 cookie 很容易,但跨域共享它很复杂。这也很有用link

    【讨论】:

      猜你喜欢
      • 2010-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-17
      • 2013-11-19
      • 1970-01-01
      • 2011-07-07
      • 2011-06-11
      相关资源
      最近更新 更多