如何在 Tomcat 6 上的 JSF 2.0 应用程序中设置 HttpOnly 标志

Row*_*ski 2 httponly tomcat6 jsf-2

我在 Sof链接上找到了这个解决方案, 但我不得不从两个原因改变它:

  1. 没有 .getFacesContext() 函数
  2. 我没有特定的 cookie 文件(请参阅ourcookiename=yourcookievalue 行)

我的代码是这样的:

FacesContext facesContext = FacesContext.getCurrentInstance();
HttpServletResponse response = (HttpServletResponse) facesContext.getExternalContext().getResponse();
response.addHeader("Set-Cookie", "; HTTPOnly");
Run Code Online (Sandbox Code Playgroud)

原始代码

FacesContext facesContext = FacesContext.getCurrentInstance().getFacesContext();   
HttpServletResponse response = (HttpServletResponse) facesContext.getExternalContext().getResponse();    
response.addHeader("Set-Cookie", "yourcookiename=yourcookievalue; HTTPOnly");
Run Code Online (Sandbox Code Playgroud)

如果我错了,请纠正我。先感谢您

lu4*_*242 5

在 jsf 2.0 中,你可以这样做:

FacesContext facesContext = FacesContext.getCurrentInstance();
facesContext.getExternalContext().addResponseHeader("Set-Cookie", "; HTTPOnly");
Run Code Online (Sandbox Code Playgroud)

这样,您就不需要对 HttpServletResponse 进行强制转换。有关 JSF 的更多文档,请查看MyFaces 文档索引