【发布时间】:2017-07-25 18:49:57
【问题描述】:
我需要从我的 JSF 页面调用第三方应用程序,这将返回一个 HTML 内容。 HTML 内容随后将显示在弹出窗口中。
第三方 URL 是一个 GET 服务,它需要一个基于当前 unix 时间戳的密钥。所以我只能在用户点击超链接时生成完整的请求 URL,否则密钥已经无效(密钥仅在 5 分钟内有效)
我尝试了以下选项,但在这种情况下,密钥是在呈现页面时生成的,如果用户在 5 分钟后单击超链接,则链接无效。
另外,由于这是身份验证密钥生成过程,出于安全原因,我不想在 javascript 中执行此操作。
<h:outputLink onclick="window.open('#{testMBean.thirdpartylink}','ThirdParty','menubar=no, status=no, scrollbars=yes, resizable=yes, toolbar=no, location=yes'); return false; ">
link number
</h:outputLink>
我也试过了,但它的行为相同
<h:outputLink onclick="#{indexBean.JSPopup()}">#{indexBean.linkName}</h:outputLink>
public String JSPopup() {
return "javascript:void window.open('" + getRedirectLink() + "','" + linkName + "','width=700,height=500,toolbar=0,menubar=0,location=0,status=0,scrollbars=0,resizable=1,left=0,top=0');return false;";
}
您能否提供一些意见,这是如何实现的?
【问题讨论】:
标签: jsf primefaces jsf-2