访问 "Browser" 个位置

Access "Browser" location

我们都看到了这个提示:

据我所知,这是不是基于 IP 的位置。这是基于设备的位置。

我不想要基于 IP 的位置,因为 1) 它不可靠,并且 2) 如果用户使用 VPN 浏览我的网站,则位置数据绝对是错误的。

我搜索了 PyPi.org 和 DjangoPackages.org,但没有找到任何可以在我的 Django 应用程序中实现的内容。

有什么解决办法吗?

要让浏览器向用户询问地理位置,您必须使用 javascript。

w3schools 中的这个片段证明了这一点。

你可以将经纬度转发给后台。

<!DOCTYPE html>
<html>
<body>

<p>Click the button to get your coordinates.</p>

<button onclick="getLocation()">Try It</button>

<p id="demo"></p>

<script>
var x = document.getElementById("demo");

function getLocation() {
  if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(showPosition);
  } else { 
    x.innerHTML = "Geolocation is not supported by this browser.";
  }
}

function showPosition(position) {
  x.innerHTML = "Latitude: " + position.coords.latitude + 
  "<br>Longitude: " + position.coords.longitude;
}
</script>

</body>
</html>