我正在使用spring security,我已经实现了我的服装UserDetailsService.loadUserByUsername,它返回一个服装UserDetails。我的问题是,我希望在我的UserDetailsService实现中从HttpServletRequest中获取信息,更具体地说,我希望获得request.getLocale();
。我该怎么做呢?
我正在使用spring security,我已经实现了我的服装UserDetailsService.loadUserByUsername,它返回一个服装UserDetails。我的问题是,我希望在我的UserDetailsService实现中从HttpServletRequest中获取信息,更具体地说,我希望获得request.getLocale();
。我该怎么做呢?
3条答案
按热度按时间vuv7lop31#
您应该能够(取决于您的配置)使用
LocaleContextHolder
存储一个static
ThreadLocal
对象,该对象存储您请求的Locale
。您可能必须向Servlet容器注册
RequestContextListener
。yvt65v4c2#
您可以将其从控制器传递到服务,从而向服务添加新参数
xmq68pz93#
我把这个留给其他人,因为我在其他地方找不到答案。经过一些修改后,我发现您可以将请求添加到bean中,如下所示: