现在需要做一个投票的功能,但是遇到了一个问题,同一个公司的对外的IP地址是相同的,这样就会导致我投票过后,本公司的其它人无法投票了。
我使用获取IP的方法是request.getRemoteAddr();请问有什么办法可以让本公司的每台机子都可以投票,但是每个用户只能投一次票呢?
我使用获取IP的方法是request.getRemoteAddr();请问有什么办法可以让本公司的每台机子都可以投票,但是每个用户只能投一次票呢?
解决方案 »
- 用jsp+javabean+servlet做登陆界面时,login.jsp老是登陆到失败页面。小弟我怀疑是jdbc没有链接上mysql。请各位前辈帮忙看代码
- 高分求思路,尽量不修改log4j.properties,让org.hibernate.exception.ConstraintViolationException不在日志文件记录ERROR
- OSGI框架的了解
- java 程序 ant编译问题急!
- Hibernate中的criteria不能按月份进行排序吗?
- Hibernate开发C3PO连接池问题!!!急,急,急!!!
- List 使用出错,求解,
- hibernate不使用配置文件配置数据库连接的问题
- 采用何种架构?J2EE 还是微软
- 请问一下这种下拉框联动该怎么实现
- 支付系统调研 在线等
- 多个war项目共享一个java项目的数据
至于4楼的方法,写一个程序确实能通过IP查MAC地址,但是一个公司返回IP地址相同的话也只是会返回一个MAC而已。
如果是公司只是通过内网投票的话,4楼的方法可以试一下,
要不这问题是无解的。
if (null == ip || ip.length() == 0 || "unkown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (null == ip || ip.length() == 0 || "unkown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (null == ip || ip.length() == 0 || "unkown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
不用那么精确地做法:写cookie 作弊几率较高。比较精确地办法: 做个程序,投票的时候自动往对面的机子上的一个路径写个文件。你懂得~ 不易发现的