搜索重定向的网站路径

时间:2012-01-12 13:32:56

标签: java redirect web path

我有两个网站,A和B.当我打开网站A时,我会被自动重定向到网站B.

我可以通过哪些功能检查网站A的完整路径是什么,重定向是什么?

我试图开始:

  

        logger.info(request.getPathInfo());
        logger.info(request.getPathTranslated());
        logger.info(request.getServletPath());
        logger.info(request.getLocalName());
        logger.info(request.getRemoteAddr());
        logger.info(request.getRemoteHost());
        logger.info(request.getRequestURI());
        logger.info(request.getServerName());

但没有一个是正确的。

对于重定向,我在Controller中使用 response.sendRedirect

感谢您的帮助。

4 个答案:

答案 0 :(得分:3)

您可以尝试使用可选的 referer 标题:

request.getHeader("referer");

但重要的是要注意,这可能并不总是填充(特别是IE)。

如果您控制两个网站,更好的解决方案是在进行重定向时以某种方式传递值。例如,作为GET或POST参数。

编辑:

如上所述,您可以将查询字符串附加到重定向网址。例如,您可以尝试这样的事情:

String redirectUrl = "http://my.redirect.com/";

redirectUrl += "?referer=";
redirectUrl += URLEncoder.encode(request.getRequestURL().toString(), "UTF-8");

然后你可以把它从另一方的请求中拉出来。

以此为出发点。您可能需要手动附加可能不属于getRequestURL()输出的其他查询参数。

答案 1 :(得分:1)

这些都不会为您提供将您重定向到当前页面的页面。您可以尝试的是:

String refererPage = request.getHeader("referer");

但请记住,这也取决于浏览器,可能并不总是存在。

答案 2 :(得分:0)

试试这个

request.getHeader("referer");

答案 3 :(得分:0)

请尝试

request.getHeader("referer");