java - 创建 session 时如何获取IP地址?

标签 java grails servlets httpsession

在我的 grails 应用程序中,我实现了接口(interface) HttpSessionListener 以监听 session 创建,如下所示:

class MyHttpSessionListener implements HttpSessionListener {

    public void sessionCreated(HttpSessionEvent event) {
        log.info "***************** Session created: id= ${event.getSession()?.id}"
    }
}

现在,我想记录负责创建 session 的 IP 地址

我该怎么做?

最佳答案

您可以访问 RequestContextHolder 并获取值

String ipAddr = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes())
           .getRequest().getRemoteAddr();

关于java - 创建 session 时如何获取IP地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3597083/

相关文章:

spring - Spring Security和Grails-为Heroku自定义URL

grails - 在请求中维护页码

java - 将值从 Servlet 传递到 WebLogic 中的 JSF Action 方法

java - 将 xpath 从 String 转换为 WebElement

java - 如何在 Java 8 和 Java 9 中使用无符号整数?

java - Twitter4j:显示特定用户帐户上带有搜索词的所有推文

java - Servlet - 强制覆盖下载的文件

java - 我想打印 hi GrandFather;但它似乎打印 hi Father

grails - 从Grails 3中的 Controller 获取所有方法

java - 使用 Java 在浏览器中下载 CSV 文件