我试图获得“真正的”用户IP地址,它正在工作,但我没有得到我自己的IP(真正的一个),用谷歌地图检查IP,将其转换为长 - 拉,谷歌地图显示我的ISP的位置。
def get_client_ip(request):
x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
if x_forwarded_for:
ip = x_forwarded_for.split(',')[0]
else:
ip = request.META.get('REMOTE_ADDR')
return ip
我想要做的是,从用户发送文章的确切位置显示地图。
有什么想法吗?
由于
答案 0 :(得分:1)
唯一可用的服务器端方法是IP,它将始终解析为您的ISP。
更高级的方法存在安全风险,因此系统会提示用户允许它们(因此只有可用的客户端)。有关更多信息,请查看HTML5 GEO:
答案 1 :(得分:1)
你将无法获得比这更精确的东西。报告的IP地址是正确的,但IP地址位置取决于ISP。对于台式计算机来说,它就像它一样好。
您当前正在检索的IP是您的应用程序收到的IP,因为所有Web应用程序都知道,就是您,但您可能会在代理或VPN之后,应用程序永远不会知道。