如何使用 FacesContext 在 JSF 中获取以前的 URL?
How to get previous URL in JSF using FacesContext?
我需要使用 FacesContext
在 JSF 中获取重定向的 URL 或 ID。对于当前 URL,我正在使用
String currentPage = FacesContext.getCurrentInstance().getViewRoot().getViewId();
最接近的是 the referer
header via ExternalContext#getRequestHeaderMap()
:
String referrer = externalContext.getRequestHeaderMap().get("referer");
// ...
您只应记住这是一个客户端控制的值,因此可以从客户端完全欺骗(即最终用户可以轻松编辑甚至删除它)。
即便如此,在某些情况下客户端应用程序也不会发送它。有关概述,请参阅以下问题:.
根据功能需求,您最好将其作为请求参数手动传递,或者将其存储在视图或会话范围内。
我需要使用 FacesContext
在 JSF 中获取重定向的 URL 或 ID。对于当前 URL,我正在使用
String currentPage = FacesContext.getCurrentInstance().getViewRoot().getViewId();
最接近的是 the referer
header via ExternalContext#getRequestHeaderMap()
:
String referrer = externalContext.getRequestHeaderMap().get("referer");
// ...
您只应记住这是一个客户端控制的值,因此可以从客户端完全欺骗(即最终用户可以轻松编辑甚至删除它)。
即便如此,在某些情况下客户端应用程序也不会发送它。有关概述,请参阅以下问题:.
根据功能需求,您最好将其作为请求参数手动传递,或者将其存储在视图或会话范围内。