django - 如何通过浏览器IP获取位置

时间:2017-10-03 15:11:59

标签: python django geolocation geoip

我有一个非常基本的django应用程序来获取天气。

我需要获取用户的位置,以向他们展示当前位置的天气。我正在使用GeoIP。

但是出现了一个问题,即GeoIP没有所有IP地址的信息。它为这些IP地址返回NoneType。

我想知道是否有其他精确的方法可以了解用户当前的经纬度,例如浏览器API?它不应该错过任何用户的位置,如GeoIP。

1 个答案:

答案 0 :(得分:2)

首先,您无法通过IP获得用户的确切位置。

ISP的某些IP与用户位置无关,但与IDC位置无关。

因此,如果您“真的”想要客户的位置,则应使用客户端(浏览器)的GeoLocation API。 (Fron的端)

你要做的是......

  1. 通过Geolocation API获取用户位置
  2. 将用户位置发布到您的服务器
  3. 返回基于位置的信息
  4. 使用信息更新您的网页(DOM)。