我有一个JSF页面,该页面通过url所在的context.getExternalContext().redirect(url);
重定向。像login.jsf?token = foobar
我现在想要的是通过POST发送 token ,而不是通过GET请求发送 token 。这样它就不会显示在url中,这对于JSF来说可能吗?
最佳答案
HTTP不可能,JSF也不能。但是,有几种方法可以达到要求。
将其放在 session 范围内。在重定向页面后面的Bean中,将其读取并从 session 范围中删除。或者,当您使用JSF 2.0时,请使用Flash作用域。
转发到包含指向所需URL的POST表单的页面,该页面具有 token 作为隐藏的输入值,并包含一些JS代码,该代码在页面加载时执行form.submit()
。
关于JSF:重定向到url,而不是GET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5405718/