session - 在 Spring Security 3.0 中登录时设置 cookie

标签 session jsp cookies spring-mvc spring-security

我需要在有人登录时设置一个 cookie,并且出现的 JSP 页面需要能够在 Javascript 中读取该 cookie 并基于它执行操作。我坚持的部分是在登录时设置 cookie。我正在使用 Spring 3.0 和 Spring Security 3.0。

我已经注册了一个 LoginListener:

public class LoginListener implements ApplicationListener {
    public void onApplicationEvent(ApplicationEvent event) {
        if (event instanceof AuthenticationSuccessEvent) {
            somehowGetResponseObject.addCookie(new Cookie(name, value));
        }
    }
}

理想情况下,我还可以获取请求对象,以便我可以找到 contextPath 并将其设置为 cookie 路径。我可以将 cookie 添加到 ThreadLocal 对象,然后稍后在我有权访问响应对象时读取它,但是稍后我可以访问该对象吗?我不太热衷于将 cookie 添加到 session 中,然后在生成的 JSP 页面中读取它,但如果必须的话,我会这样做。我可以访问 HttpSession 吗?

更新 :指定身份验证成功处理程序引用解决了这个问题:http://static.springsource.org/spring-security/site/docs/3.0.x/reference/core-web-filters.html#form-login-flow-handling

最佳答案

完全不同的东西,为什么不把那个值当作一个 JS 变量来打印呢?

<script>
    var something = '${somebean.someproperty}';
    if (something) {
        performActionWith(something);
    }
</script>

关于session - 在 Spring Security 3.0 中登录时设置 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4306815/

相关文章:

java - 我需要 Struts 才能让 Tile 正常工作吗?

cookies - 底部的 Cookie 警报

php - 使用 Wordpress wp_query 搜索存储在数组中的多个变量的出现

javascript - 如何在php中将数组记录从进程页面传递到索引页面?

javascript - 使用 javascript 列出 tar 文件的内容

java - httpAsyncClient 中的状态管理

ios - 在 iOS 应用程序中的 WKWebView 和 Alamofire API 调用下管理单独的 cookie 和 session

.htaccess - Apache htaccess:如果REQUEST_URI与cookie值不匹配,则拒绝

session - SDN升级到4.2.0.BUILD-SNAPSHOT后如何获取当前的neo4j session ?

php - CodeIgniter session 与 PHP session