spring-webflux - 如何在 webflux 中获取客户端 IP?

标签 spring-webflux

我曾经调用 HttpServletRequest.getRemoteAddr() 来获取客户端 ip。
我想知道如何通过 ServerWebExchange 获得它。
我最好的猜测是:

  serverWebExchange.getRequest().getRemoteAddress().getAddress().getHostAddress();
这是正确的吗?

最佳答案

是的,这是实现这一目标的正确方法。
请注意,如果您想支持 Forwarded 或 X-Forwarded-* HTTP 请求 header ,则需要在服务器配置级别进行配置。

关于spring-webflux - 如何在 webflux 中获取客户端 IP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50981136/

相关文章:

spring-webflux - 我什么时候使用 Mono.flatMapIterable 和 Mono.flapMapMany?

json - Spring WebFlux 功能端点 + @JsonView 怎么样?

spring - WebFlux 应用程序中的 WebFilter

java - 实现不带斜杠的 url

java - react 性 : Caching service response for few hours

java - 为什么我的 Grpc ClientInterceptor 没有正确的 react 器上下文?

java - WebFlux 在后台执行请求?

java - 如何在 Spring WebFlux Security(Reactive Spring Security) 配置中将多个用户角色添加到单个 pathMatcher/Route?

spring - 如何避免在执行长时间运行计算的 Spring WebFlux Controller 中使用 Kotlin Coroutines 的 GlobalScope

Spring 5 WebFlux Mono 和 Flux