【发布时间】:2011-03-08 07:47:16
【问题描述】:
我用 Spring/GWT 制作了一个使用 Flash 上传文件的网络应用程序。
当我使用 GWT 发送 ajax 请求并尝试获取用户 ip 地址时,我得到一个 ipv4 地址,例如:127.0.0.1
但是当我使用 flash 上传文件时(以及在同一个 webapp 上的发布请求)我得到一个 ipv6 地址 0:0:0:0:0:0:0:1
我使用相同的代码来获取用户 ip,即:
ServletRequestAttributes att = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
att.getRequest().getRemoteAddr();
问题是我使用了一个使用 ip 地址的签名来确保用户可以上传文件(由于使用 flash 上传时会话丢失的错误),并且当我使用 ajax 或通过 flash 发布时,ip 地址会发生变化。
什么问题,我怎样才能得到相同的ip格式?
谢谢
【问题讨论】:
-
您无法控制用户使用的 IP 地址,请尝试使用 cookie。
标签: java spring jakarta-ee ipv6 ipv4