Referer是怎么用的,在Servlet当中请给出一个例子
Referer:
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。
马克-to-win:我要是帮你卖出产品。我是不是不能白劳动?是不是该拿提成?对,没错。用户经过我的网站跳到你的网站上,买了你的东西,应该给我提成。这件事情用Servlet如何实现呢?下面就给出一个例子。如果经过AAA.html跳转到我们的Servlet,我们就打印“给他提成”。如果直接访问我们的Servlet,而没有经过任何其他页面跳转过来的。我们就打印“不用给任何人提成”。其实实现这个技术的关键就在于:html的Header当中有一个叫做Referer的键,取他对应的值就可以了。
例:4.3.1:
package com;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class ServletHello1 extends HttpServlet {
protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
response.setCharacterEncoding("GBK");
String referer = request.getHeader("Referer");
System.out.println(referer);
if (referer == null) {
response.getWriter().println("不用给任何人提成,他自己来的");
}else{
if(referer.indexOf("AAA.html")!=-1)
response.getWriter().println("应给提成的人是 is "+referer+"<br>");
}
}
}
AAA.html:
<html>
<body>
Click <A HREF="/ServletHello/MarkToWinServlet">here</A>
</body>
</html>
假如你先访问AAA.html,得到的结果将是以下:
当你点击here, 结果变成:
假如你直接访问ServletHello1: