【发布时间】:2014-08-28 14:19:37
【问题描述】:
我想在 JSP 标记中执行 if 语句,因此如果前一个 URL 字符串 = 0 或为空,则不显示任何内容。我试图使用refererPAge,但它不起作用。任何人都可以帮忙。我什至无法让它显示以前的网址
<c:set var="refererPage" scope="request" value="${request.getHeader}"/>
<c:out value="${refererPage}"/>
${refererPage}
谢谢
【问题讨论】:
-
你检查过 request.getHeader 实际上返回了什么吗?请求标头包含一堆不同的属性。它们在这里被描述:tutorialspoint.com/jsp/jsp_client_request.htm
-
我该怎么做?
-
在 JSTL 中使用类似 ${request.getHeader} 的东西有点多余,因为使用点运算符是一个隐式的 getter 函数。所以在使用 if test={(param name) not empty} (这是一个空检查)之外,尝试 request.referer 或 request.getHeader['referer']
-
不会在页面中返回任何内容,因为已经尝试过
${refererPage} -
我想我明白了。如果您通过浏览器 url 而不是链接或重定向访问页面,则请求标头中将不存在“referer”标头属性。因此,如果我正确地阅读了您的问题,那么您的推荐人不会获得任何价值,因为没有推荐人。如果您打开浏览器控制台并通过 URL 访问页面,然后检查请求标头,您将看到我得到的内容