免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3087 | 回复: 3
打印 上一主题 下一主题

jsp中获取客户ip及其他资料的方法 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-05-23 06:47 |只看该作者 |倒序浏览
具体的方法可以看看java ee的文档啊,文档里面都有的。
首先,搜索jsp client ip 等关键字就可以找到下列代码:
out.print( request.getRemoteAddr() );
out.print( request.getRemoteHost() );

经过搜索
这个request应该是 HttpServletRequest,所以文档在 http://java.sun.com/j2ee/sdk_1.3 ... ServletRequest.html

然后可以自己尝试一下用request.xxxxx来获取不同的信息。我找到一个列表以供参考
<ul>
CGI Variable Servlet Request Method
<li>SERVER_SOFTWARE     ?
<li>SERVER_NAME         HttpServletRequest.getServerName()
<li>GATEWAY_INTERFACE   N/A  The revision of the CGI specification to which
this server complies. Format: CGI/revision
<li>SERVER_PROTOCOL     HttpServletRequest.getProtocol()
<li>SERVER_PORT                 HttpServletRequest.getServerPort()
<li>REQUEST_METHOD      HttpServletRequest.getMethod()
<li>PATH_INFO           HttpServletRequest.getPathInfo()
<li>PATH_TRANSLATED     HttpServletRequest.getPathTranslated()
<li>SCRIPT_NAME                 HttpServletRequest.getServletPath()
<li>QUERY_STRING                HttpServletRequest.getQueryString()
<li>REMOTE_HOST                 HttpServletRequest.getRemoteHost()
<li>REMOTE_ADDR                 HttpServletRequest.getRemoteAddr()
<li>AUTH_TYPE           HttpServletRequest.getAuthType()
<li>REMOTE_USER         HttpServletRequest.getRemoteUser()
<li>REMOTE_IDENT                ? - but if a server supports RFC 931, it should probably
pass this in getRemoteUser()
<li>CONTENT_TYPE                HttpServletRequest.getContentType()  For queries which
have attached information, such as HTTP POST and PUT, this is the content
type of the data.
<li>CONTENT_LENGTH              HttpServletRequest.getContentLength()
<li>HTTP_ACCEPT         HttpServletRequest.getHeader("Accept")
<li>HTTP_USER_AGENT             HttpServletRequest.getHeader("User-Agent")
</ul>

论坛徽章:
0
2 [报告]
发表于 2006-05-23 08:53 |只看该作者
文档是E文的,还是1.3版的~~
想找个新版本的,最好是中文的~~HOHO~~

本文章还比较好理解,基本是HttpServletRequest的函数~~

论坛徽章:
0
3 [报告]
发表于 2006-05-23 09:00 |只看该作者
非常感谢
两个方法request.getRemoteHost(),request.getRemoteAddr()我以前倒是也用过,
其他的方法没有用过,也不知道使用那些方法到底能提取什么样的具体信息,比如IE版本
OS版本以及访问者所在地区等等不知道上述列举的方法中有没有实现此功能的方法,目前
还没有测试

论坛徽章:
0
4 [报告]
发表于 2006-05-24 01:59 |只看该作者
java ee 5前几天才刚刚发布呢,文档在 http://java.sun.com/javaee/5/doc ... ServletRequest.html

至于其他的method怎么用,爱神天使自己写个jsp试一试不就知道了吗?很多用户浏览器提交的特殊信息(如浏览器版本,操作系统版本等)是放在header里面的
Enumeration  e = request.getHeaderNames();
for (Enumeration e = v.elements() ; e.hasMoreElements() ;) {
         String hn = (String)e.nextElement();
         System.out.println(hn + " : " + request.getHeader(hn) );
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP