springmvc:检索http请求头

b1uwtaje  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(354)

我实现了一个微服务架构。在访问每个微服务之前,请求通过一个网关来检查身份验证,并在此过程中添加一个 X-User 包含用户id的标头。
在我的每个微服务中,我都希望能够检索到这个用户( X-User )以优雅的方式:不添加 HttpRequest / @RequestHeader 给我所有的控制器并把它传给服务等。
使用类似于 SecurityContextHolder.getContext().getAuthentication().getUserId(); “这将是完美的,但由于我不管理我的微服务的身份验证,这是不可能的。

dxxyhpgq

dxxyhpgq1#

您应该能够:
实现一个servlet Filter (详见这篇baeldung文章) userIdServletRequest 并储存在 ThreadLocal (详见本文)
取回那个 ThreadLocal 从任何需要 userId 祝你好运!

相关问题