一尘不染

如何在spring bean中获得HttpServletRequest?

spring

我正在开发一个具有基于Flex的前端和Spring / Hibernate后端的应用程序。

要使Facebook集成以目前的方式运行,我需要阅读后端前端javascript中设置的cookie,并在登录期间进行一些验证,以查看用户是否尝试欺骗其Facebook。登录。

这将非常容易,但是我不知道如何获取HttpServletRequest。我正在使用一个非常基本的Spring配置(这是我第一个真正的Spring应用程序,现在我非常熟悉它,但是有很多我从未看过。)

我没有使用Spring MVC或Spring WebFlow或类似的东西。我可以获取ServletContext,但尚未弄清楚如何获取请求。


阅读 549

收藏
2020-04-16

共1个答案

一尘不染

如果FlexContext不可用:

解决方案1:inside method (>= Spring 2.0 required)

HttpServletRequest request = 
        ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes())
                .getRequest();

解决方案2:内部bean(supported by >= 2.5, Spring 3.0 for singelton beans required!)

@Autowired
private HttpServletRequest request;
2020-04-16