request.getRemoteHost() //得到用户的IP

解决方案 »

  1.   

    request.getMethod() //得到用户是用GET还是POST方法
      

  2.   

    http://www.csdn.net/expert/TopicView.asp?id=88445
      

  3.   

    request.getRemoteHost() //得到用户的IP服务器的IP得用什么方法...?????
     
      

  4.   

    request.getServerName()
    request.getServerPort()
      

  5.   

    还是不可以,request.getServerName()方法得到的是当前服务器的IP与端口号,
    但不是我想得到的东东如何取得数据来源的"服务器"地址???
    也可说是post时的页面所在地址
      

  6.   

    request.getRemoteHost() //得到用户的IP
    这个不就是POST的叶面地址。
      

  7.   

    用户使用www.a.com/post.htm的话,
    用request.getRemoteHost()是得不到www.a.com的,有其它方法吗???
      

  8.   

    把下面的servlet编译后自己试试看吧。http://localhost/servlet/Infoimport java.io.*;
    import java.util.*;
    import javax.servlet.*;
    import javax.servlet.http.*;public class Info extends HttpServlet {
      
      ServletConfig config;  public void init(ServletConfig tconfig) throws ServletException {
        super.init(tconfig);
        config=tconfig;}  public String getServletInfo() {
      return "Info version 1.9: a demo and diagnostic servlet from vqSoft";}  private void pp(PrintWriter os, String name, String value) {
      os.print("<b>"+name+": </b>");
      if (value==null)
          os.print("<b>none</b>");
        else
          os.print(value);
        os.println("<br>");}
      
      private void pp(PrintWriter os, String name, int value) {
        pp(os, name, String.valueOf(value));}  public void dostuff(HttpServletRequest req, HttpServletResponse rep) throws ServletException, IOException {
       log("invoked");
        rep.setContentType("text/html");
      PrintWriter os=rep.getWriter();
        os.println("<html>");
      os.println("<head><title>Info servlet</title></head>");
      os.println("<body bgcolor=#add8af>");
      os.println("<table border=0 cellspacing=0 cellpadding=2 cols=3 width=100%>");
        os.println("<tr><td valign=top>");
        os.println("<h1 align=center>Info servlet</h1>");
        os.println("<hr>");
        os.println("<p>This page was generated by <i>Info</i> version 1.9, a demo and diagnostic servlet supplied with <a href=http://www/vqsoft.com/vq/server/index.html><i>vq</i>Server</a>. ");
        os.println("<i>Info</i> lists its initialisation parameters, information about the http request which invoked it and the http request parameters passed to it.</p>");
        os.println("<hr>");
        
        os.println("<h3>Servlet initialisation parameters</h3>");
        Enumeration e=config.getInitParameterNames();
        if (!e.hasMoreElements())
          os.println("<b>None!</b>");
        else while (e.hasMoreElements()) {
          String name=(String) e.nextElement();
          String value=config.getInitParameter(name);
          pp(os, name, value);}
        os.println("<hr>");
        
        os.println("<h3>Request parameters</h3>");
        pp(os, "Request method", req.getMethod());
      pp(os, "Request URI", req.getRequestURI());
      pp(os, "Request protocol", req.getProtocol());
        pp(os, "Servlet path", req.getServletPath());
      pp(os, "Path info", req.getPathInfo());
      pp(os, "Path translated", req.getPathTranslated());
      pp(os, "Query string", req.getQueryString());
      pp(os, "Content length", req.getContentLength());
      pp(os, "Content type", req.getContentType());
      pp(os, "Server name", req.getServerName());
      pp(os, "Server port", req.getServerPort());
      pp(os, "Remote user", req.getRemoteUser());
        pp(os, "Remote address", req.getRemoteAddr());
      pp(os, "Remote host", req.getRemoteHost());
      pp(os, "Authorization scheme", req.getAuthType());
        os.println("<hr>");
        
        os.println("<h3>Request headers</h3>");
        e=req.getHeaderNames();
        if (!e.hasMoreElements())
          os.println("<b>None!</b>");
        else while (e.hasMoreElements()) {
          String name=(String) e.nextElement();
          String value=(String) req.getHeader(name);
          pp(os, name, value);}
        os.println("<hr>");
        
        os.println("<h3>Servlet parameters</h3>");
        e=req.getParameterNames();
        if (!e.hasMoreElements())
          os.println("<b>None!</b>");
        else while (e.hasMoreElements()) {
          String name=(String) e.nextElement();
          String value=req.getParameter(name);
          StringBuffer tbuffer=new StringBuffer();
          pp(os, name, value);}
        os.println("<hr>");
        
        os.println("<h3>Other servlets (by name)</h3>");
        ServletContext tcontext=config.getServletContext();
        e=tcontext.getServletNames();
        if (!e.hasMoreElements())
          os.println("<b>None!</b>");
        else while (e.hasMoreElements()) {
          os.println((String) e.nextElement()+"<br>");}
        os.println("<hr>");
        
        os.println("<h3>Other servlets</h3>");
        e=tcontext.getServlets();
        if (!e.hasMoreElements())
          os.println("<b>None!</b>");
        else while (e.hasMoreElements()) {
          Servlet tservlet=(Servlet) e.nextElement();
          os.println(tservlet.getServletInfo()+"<br>");}
        os.println("<hr>");
        
        os.println("<p><i>Info</i> version 1.9. <i>Info</i> and <a href=http://www/vqsoft.com/vq/server/index.html><i>vq</i>Server</a> are copyright &copy; 1997-99 Steve Shering and <i>vq</i>Soft.");
        os.println("</td>");    
        os.println("<td width=20></td>");
        os.println("<td valign=top width=150>");
        os.println("<a href=/index.html><img src=/vq/server/icons/utab.gif border=0 height=15 width=15>Home page</A>");
        os.println("</td>");
        os.println("</table>");
        os.println("</body></html>");
        os.flush();}  public void doGet(HttpServletRequest req, HttpServletResponse rep) throws ServletException, IOException {
        dostuff(req, rep);}  public void doPost(HttpServletRequest req, HttpServletResponse rep) throws ServletException, IOException {
        dostuff(req, rep);}}
      

  9.   

    不行呀!最近CSDN的速度才可以,所以现在才回复,告知着一定给分...
      

  10.   

    InetAddress.getLocalHost().getHostAddress()
    返回当前服务器的地址
      

  11.   

    不知能不能以下方法解决:
    1。在你的form提交页设一个session,在form的执行页验证这个session,通过才处理。
    2。执行页检查是那一个页面提交来的,好象有一个request.getReferr()方法能得到用户从那一页来到本页,方法名记不大清了,手边没有资料,你查一下文档吧,应该有。从head信息也能够得到,resin,tomacat文档有。