JSP 和 HTTP Header 裡Referer的應用,
使用Referer來判斷有沒有重首頁進入網頁
如果網頁不想讓人一下就進入到內頁的話,可以考慮慮使用一下Header裡的Referer來判斷
範例如下
1.先來一個歡迎頁加一個連結
=== index1.jsp ===
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<h1>Hello World!</h1>
<a href="referer.jsp">Next Page</a>
=== referer.jsp ===
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<h1>Hello World!</h1>
<%=request.getHeader("Referer")%>
<%if (null == request.getHeader("Referer") || request.getHeader("Referer").indexOf("localhost") < 0) {%>
請從首頁進來
<%} else {%>
合法訪問
<%}%>
不過這也只能防君子。Referer只是一個http request的header欄位,header欄位是從client送出的,所以如果不是用瀏覽器送出的話...這個值要用什麼,當然是隨自己高興。
對哦,多謝提醒,可以使用setHeader把值設進去