2011-08-09 35 views
4

我需要调用我的网络应用程序的URL。 例如: - 如果有从我的网站foo.com从stackoverflow.com链接,我需要web应用程序(托管bean)中的stackoverflow链接。如何取得以前的网址?

所有帮助赞赏,谢谢。

回答

10

并非总是洋溢,但你可以使用:

HttpServletRequest.getHeader("Referer"); 

注:拼写错误是故意的。有关说明,请参阅here

+0

我一直在尝试Referer一段时间,但它的返回null。 FacesContext.getCurrentInstance()。getExternalContext() \t \t \t \t .getRequest()。getHeader( “引荐”) – 757071

+2

正如我所说的,它并不总是充满。你如何创建请求?使用浏览器?点击链接或输入网址? – nfechner

+1

@ user757071尝试使用浏览器调试工具,例如Firefox的Firbug。它可以显示所有请求和响应标题。点击链接后,您可以查看请求中是否存在Referer头。 – Qwerky

1

通过检查HTTP Referrer,您可以从哪个站点看到您网站的请求来自哪里。