如何检查Spring MVC应用程序中是否有跨域请求?

时间:2016-01-29 22:09:09

标签: spring cross-domain

如果请求来自具有相同来源的页面,我需要检查spring应用程序,如何检查?

2 个答案:

答案 0 :(得分:3)

虽然阿里的answer已经涵盖了您所寻找的内容,但对我来说,您似乎试图控制跨域请求。

如果是这种情况,我建议您查看Spring( 4.2版本)支持,通过@CrossOrigin注释和xml配置控制跨域请求{{1 }}

有关实施详情,请参阅Spring博客herehere

答案 1 :(得分:1)

HttpServletRequest添加到处理程序方法参数中,并将用户主机和端口与服务器的主机和端口进行比较:

@RequestMapping(method = GET)
public void crossOriginTest(HttpServletRequest request) {
    String userHost = request.getRemoteHost();
    int userPort = request.getRemotePort();

    int serverPort = request.getServerPort();
    String serverName = request.getServerName();

    // compare them
    // Maybe get the X-Forwarded-For
} 

如果您的服务器位于Load Balancer之后,请查看X-Forwarded-For属性以识别客户端的IP地址。