2012-01-04 84 views
0

我刚刚在几天前开始使用Java servlets。我正在尝试开发一个仅用于练习的程序,并了解我们可以使用Java servlet完成的任务。通过cookies获取客户端环境信息

试图有一个生成一个cookie和响应并将其发送回给客户机的程序。 发回cookie并获取cookie信息没有问题,但我想要做的是,我们可以使用cookie获取有关客户端环境的信息,以及我们是否可以使用cookie获取浏览器信息,例如哪个浏览器,其版本,OS等

我知道他们存储状态信息,因为HTTP是无状态的。所以我只是想知道并试图通过cookie来获取客户端的环境信息和浏览器信息。

+0

你提的问题是非常广泛的。我会推荐一本好的HTML书或在线教程。 – Perception 2012-01-04 02:37:28

+0

如果您想要客户端信息,请查看请求标头。尝试http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/Servlet-Tutorial-Request-Headers.html代码 – rickz 2012-01-04 03:11:21

回答

3

Cookies没有设计来获得客户信息。您必须使用javax.servlet.http.HttpServletRequest方法 - getHeader()getHeaders()方法来读取请求标头键值。

Enumeration names=request.getHeaderNames(); 

    while(names.hasMoreElements()) 
    { 
    String key=names.nextElement().toString(); 
    String value=request.getHeader(key); 
    } 

想要获得价值user-agent的钥匙。

String userAgent=request.getHeader("user-agent"); 
+0

对不起回复迟迟!但谢谢..你的文章帮助我! :) – ritesht93 2012-03-28 02:51:48

0
import java.io.IOException; 
import java.io.PrintWriter; 

import javax.servlet.ServletException; 
import javax.servlet.http.Cookie; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

public class GetCookiesServlet extends HttpServlet { 

    public void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 

     Cookie[] cookies = request.getCookies(); 

     response.setContentType("text/html"); 
     PrintWriter pw = response.getWriter(); 
     pw.println("<B>"); 
     for (int i = 0; i < cookies.length; i++) { 
      String name = cookies[i].getName(); 
      String value = cookies[i].getValue(); 
      pw.println("name = " + name + "; value = " + value); 
     } 
     pw.close(); 
    } 
} 

请访问此link

+1

问题是我们是否获取客户信息(浏览器。其中,它的版本,操作系统)通过cookie? – adatapost 2012-01-04 02:52:19

+0

看到这个[链接](http://www.roseindia.net/servlets/header-information-available.shtml) – sivakg2000 2012-01-04 02:56:51

+0

我也多次引用该网站:P,dost!感谢您的链接! :) – ritesht93 2012-03-28 02:54:23

相关问题