代码之家  ›  专栏  ›  技术社区  ›  antony.trupe

gwt-rpc中的会话id cookie

  •  8
  • antony.trupe  · 技术社区  · 17 年前

    我不应该自己滚动,而是使用已经标准化的东西吗?

    我正在使用gwt和谷歌应用引擎平台。

    3 回复  |  直到 14 年前
        1
  •  24
  •   antony.trupe    17 年前

    Using Servlet Sessions in GWT

    String jSessionId=this.getThreadLocalRequest().getSession().getId();
    

    在客户端代码中:

    String jSessionId=Cookies.getCookie("JSESSIONID");
    

    Enabling_Sessions

    appengine-web.xml

    <sessions-enabled>true</sessions-enabled>
    
        2
  •  2
  •   Noon Silk    17 年前

    不,你不应该自己滚。

    会话ID需要是加密随机的(不能从已知来源猜测)。你自己很难做到这一点。

        3
  •  1
  •   Vineet Reynolds    17 年前

    理想情况下,您应该依赖底层框架的会话管理功能。Servlets&;JSP、Struts和Spring都有这种支持,您应该使用它。

    在极少数情况下,您正在编写自己的框架,而没有底层会话管理功能可以依赖,您可以从java.security开始。首先是SecureRandom类。当然,不要在这里重新发明轮子,因为断开的会话管理与断开的身份验证是一样的。

    更新

    鉴于您正在使用Google App Engine,您应该依赖该引擎提供的会话管理功能。 It seems that it is not switched on by default .