Servlet如何得到客户端机器的信息


Posted in 面试题 onOctober 17, 2014
Servlet可以使用getRemoteAddr()和getRemoteHost()来得到客户端的IP地址和host, 代码如下所示:

public String ServletRequest.getRemoteAddr()
public Stirng ServletRequest.getRemoteHost()

用这些方法来访问客户端有所限制,如下代码实现了对客户端配置进行检查并把相关消息发送到客户端的功能:

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class DemoExportRestriction extends HttpServlet{

public void doGet(HttpServletRequest req,HttpServletResponse res)
throws ServletException,IOException{

res.setContentType("text/plain");
PrintWriter out= res.getWriter();

//得到客户端的hostname
String remoteHost = req.getRemoteHost();

//查看客户端是否允许这样的操作
if(!isHostAllowed(remoteHost)){
out.println("Access ACCESS DENIED ");
} else{
out.println("access granted");
}
}
private boolean isHostAllowed(String host) {
return(host.endsWith(".com"))||
(host.indexOf(.)==-1);//没有域名 ok
}
}

Tags in this post...

面试题 相关文章推荐
描述一下JVM加载class文件的原理机制
Dec 08 面试题
C语言怎样定义和声明全局变量和函数最好
Nov 26 面试题
定义一结构体数组表示分数,并求两个分数相加之和
Jun 11 面试题
一套SQL笔试题
Aug 14 面试题
如何查询Oracle数据库中已经创建的索引
Oct 11 面试题
阿里巴巴Oracle DBA笔试题答案-备份恢复类
Nov 20 面试题
为什么UNION ALL比UNION快
Mar 17 面试题
网络通讯中,端口有什么含义,端口的取值范围
Nov 23 面试题
简述DNS进行域名解析的过程
Dec 02 面试题
如何开发一个JQuery插件
Jul 28 面试题
若干个Java基础面试题
May 19 面试题
请说出以下代码输出什么
Aug 30 面试题
HttpServlet类中的主要方法都有哪些?各自的作用是什么?
Mar 16 #面试题
Servlet如何得到服务器的信息
Dec 22 #面试题
Servlet方面面试题
Sep 28 #面试题
介绍一下javax.servlet.Servlet接口及其主要方法
Nov 30 #面试题
如何现实servlet的单线程模式
Aug 05 #面试题
描述JSP和Servlet的区别、共同点、各自应用的范围
Oct 02 #面试题
Java Servlet的主要功能和作用是什么
Feb 14 #面试题
You might like
YII分模块加载路由的实现方法
2018/10/01 PHP
实例讲解PHP表单验证功能
2019/02/15 PHP
Dojo之路:如何利用Dojo实现Drag and Drop效果
2007/04/10 Javascript
jQuery 改变CSS样式基础代码
2010/02/11 Javascript
文本框中,回车键触发事件的js代码[多浏览器兼容]
2010/06/07 Javascript
编写简单的jQuery提示插件
2014/12/21 Javascript
javascript使用avalon绑定实现checkbox全选
2015/05/06 Javascript
浅谈JSON.parse()和JSON.stringify()
2015/07/14 Javascript
jQuery实现拖拽可编辑模块功能代码
2017/01/12 Javascript
vue小白入门教程
2018/04/02 Javascript
js数组去重的N种方法(小结)
2018/06/07 Javascript
JavaScript捕捉事件和阻止冒泡事件实例分析
2018/08/03 Javascript
JS原生瀑布流效果实现
2019/04/26 Javascript
Vue 中文本内容超出规定行数后展开收起的处理的实现方法
2019/04/28 Javascript
bootstrap table.js动态填充单元格数据的多种方法
2019/07/18 Javascript
vue element和nuxt的使用技巧分享
2021/01/14 Vue.js
[35:43]2018DOTA2亚洲邀请赛 4.1 小组赛B组 paiN vs Effect
2018/04/03 DOTA
python线程锁(thread)学习示例
2013/12/04 Python
使用python的chardet库获得文件编码并修改编码
2014/01/22 Python
用Python遍历C盘dll文件的方法
2015/05/06 Python
python函数形参用法实例分析
2015/08/04 Python
使用Python的Flask框架构建大型Web应用程序的结构示例
2016/06/04 Python
python制作websocket服务器实例分享
2016/11/20 Python
python爬虫爬取淘宝商品信息
2018/02/23 Python
Vue的el-scrollbar实现自定义滚动
2018/05/29 Python
python爬虫 爬取58同城上所有城市的租房信息详解
2019/07/30 Python
基于Django实现日志记录报错信息
2019/12/17 Python
TensorFlow2.X结合OpenCV 实现手势识别功能
2020/04/08 Python
Python基于Tkinter编写crc校验工具
2020/05/06 Python
在主流系统之上安装Pygame的方法
2020/05/20 Python
python logging模块的使用详解
2020/10/23 Python
幼儿园小班植树节活动方案
2014/03/04 职场文书
大学生村官演讲稿
2014/04/25 职场文书
小学教师师德承诺书
2014/05/23 职场文书
亚运会口号
2014/06/20 职场文书
2015年七夕爱情寄语
2015/03/24 职场文书