如何获取用户的地理位置?

2023-12-10

在许多网站上,我看到打印出我当前所在的城市(例如“你好,柏林。”)。他们是怎么做到的?为此需要什么? 我想主要部分是这里的 javascript,但是我需要什么才能在我自己的应用程序中实现这样的东西呢? (或者有一些 Rails 的 gem 吗?)

另外,我还想问一件事 - 我对州列表(通常在选择框中)感兴趣,用户在其中选择他的州(比如说德国),根据州值在另一个选择中显示所有区域在德国,选择区域后将显示所选区域中的各个城市。

是否可以在任何地方获得这个庞大的州/城市/地区数据库?在我们的应用程序中拥有类似的东西会很有趣,但我不知道这些列表在哪里......


你需要一个支持geolocation api的浏览器来获取用户的位置(但是,你需要用户的同意(例如here)这样做(大多数较新的浏览器支持该功能,包括 IE9+ 和大多数移动操作系统的浏览器,包括 Windows Phone 7.5+)。

然后你所要做的就是使用 JavaScript 来获取位置:

if (window.navigator.geolocation) {
    var failure, success;
    success = function(position) {
      console.log(position);
    };
    failure = function(message) {
      alert('Cannot retrieve location!');
    };
    navigator.geolocation.getCurrentPosition(success, failure, {
      maximumAge: Infinity,
      timeout: 5000
    });
}

The position对象将保存用户位置的纬度和经度(但是,在桌面浏览器上人口较少的区域,这可能非常不准确,因为它们没有内置 GPS 设备)。进一步解释一下:在莱比锡,在台式电脑上获得的精度约为 300 米 - 我使用手机的 GPS 设备获得的精度约为 30 米。

然后您可以继续使用坐标谷歌地图 API (see 此处用于反向地理编码)来查找用户的位置。有一个Rails 的一些宝石, 如果你想。我从来没有觉得有必要使用它们,但有些人似乎喜欢它们。

至于国家/城市列表,我们使用了从Geonames曾经在一个项目中,但我们需要首先将其转换为我们的需要。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取用户的地理位置? 的相关文章

  • 根据访客 IP 地址(国家/地区)将主网站重定向到子域

    我需要帮助根据访问者 IP 地址 位置 将我的网站重定向到子域 我有 3 个特定网站 我想将来自欧洲的访客重定向至eu mysite com 我想将访客从美国重定向至us mysite com 我想将访问者从世界其他地方重定向到mysite
  • 无法在地理围栏中收到警报

    我运行了一个地理围栏示例 并分配了两组 Lat Lng 和 radius 并运行该示例 当我点击注册地理围栏时 我在日志中收到以下内容 Location Services is available Client connected Add
  • 像 Groupon 这样的网站如何根据其进行交易的城市来进行地理定位?

    假设您从加利福尼亚州阿古拉山 Agoura Hills 的入口点访问 Groupon Groupon 将如何将该城镇引用到最近有优惠的城市 例如洛杉矶 并选择该城市作为最近的城市 它是否从该位置获取纬度 经度并计算与所有可用城市的距离 选择
  • 允许 UIWebView 内的位置访问

    我有一个基于 webview 的应用程序 当我访问时http maps google com http maps google com 我的 webview 没有像 Safari 那样传递位置 我知道需要 CLLocationManager
  • 当 Mac 设置(而非浏览器设置)拒绝位置共享时,HTML5 地理定位 API 会悄然失败

    我遇到了一个问题 如果我的 Mac 拒绝位置共享 那么 JS 代码中什么也不会发生 这很危险 无论如何要解决这个问题吗 如果系统拒绝位置共享 我预计会抛出异常 Running macOS Mojave 10 14 6并测试于Chrome 8
  • Mongodb 地理位置边界搜索/查询

    我有一个包含位置 框 方形区域 列表的文档 每个框由 2 个点表示 左下或西南 右上角或东北 文档 例如 locations bottom left top right bottom left top right bottom left t
  • 邮政编码 + 国家/地区到地理坐标

    获取给定国家 地区的给定邮政编码 邮政编码的坐标 纬度 经度 的最完整 精确和可靠的方法是什么 我需要发出大量请求 因此高 API 限制率 甚至可能不存在 会很有用 GeoNames http www geonames org postal
  • 如何将世界上所有国家/城市/州放入我的数据库?

    我有一个困难的架构和网络问题 我正在尝试为世界上每个城市制作一个关于徒步旅行的页面http www comehike com http www comehike com 我必须以某种方式导入世界上所有的城市 并按州构建它们 而州又按国家构建
  • 使用 JavaScript 进行地理位置定位

    我正在编写一个脚本来获取地理位置 纬度 经度 我可以使用它来将我的谷歌地图实例居中 目前我使用两种可能的技术 其一是google loader ClientLocation目的 我还没有测试过这个 因为它为我返回 null 我想是因为我不住
  • 在没有互联网的情况下使用 Javascript 获取 GPS 位置 [重复]

    这个问题在这里已经有答案了 您好 如果设备具有 GPS 硬件 我们可以在没有互联网连接的情况下使用 JavaScript 获取 GPS 位置吗 请注意谁将其标记为重复 我需要 JavaScript 在没有互联网连接的情况下工作 并使用 GP
  • 应用程序中所有国家/地区的城市和邮政编码

    有没有一种方法可以将所有国家 州 城市的邮政编码存储在一个数据库中 我一直在到处寻找 我发现地名网 http www geonames org 我猜其中包含了所有内容 但无法直接获取该数据 我正在使用导轨 如果有任何助手或插件就太好了 如果
  • map.setMyLocationEnabled(true) 的真正作用是什么

    我正在设置 map setMyLocationEnabled true 但我想知道这到底是做什么的 我知道的 我在地图的右上角看到一个 定位我 按钮 我在地图上看到一个代表我当前位置的蓝色图标 这是我的担忧 我正在编写一个位置感知应用程序
  • 使用 Google 地图 API 进行反向地理编码

    我正在研究 JavaScript Google Map API 版本 3 更准确地说 正在研究反向地理定位 在 的帮助下官方文档 http code google com intl fr apis maps documentation ge
  • 网络应用程序如何询问移动设备的位置?

    许多现代手机 谷歌Nexus等 都有某种内置的定位服务 当我访问某个网站 例如 google com 时 该网站会询问我是否愿意与该网站分享我的位置 您实际上如何要求移动设备向网站提供其位置 该位置以什么格式给出 我没有任何线索 也没有从谷
  • 模块“””在 ionic 3 Geolocation 中没有导出成员“NativeGeocoderReverseResult”

    模块 没有导出成员 NativeGeocoderReverseResult L13 从 ionic native geolocation ngx 导入 Geolocation L14 导入 NativeGeocoder NativeGeoc
  • MapItemView 在 dataChanged 信号后不会更新

    我正在使用 QMLMapItemView使用 C 的组件QAbstractListModel基于模型 这MapItemView当模型重置时 或者每当添加新项目或删除现有项目时 工作正常 但是 那MapItemView不反映对已添加项目的更改
  • MongoDB 存储过程等效项

    我有一个包含商店列表的大型 CSV 文件 其中一个字段是邮政编码 我有一个名为 ZipCodes 的独立 MongoDB 数据库 它存储任何给定邮政编码的纬度和经度 在 SQL Server 中 我将执行一个名为 InsertStore 的
  • 智能位置表单字段

    我的用户注册表单上有一个文本字段location 我本质上希望这个字段能够根据 Google 地图 或同等地图 进行验证 只允许有效位置通过 最好采用类似的格式滑铁卢 伦敦 or 伦敦 英国 要求 除了位置名称之外 我还想返回该位置中心的坐
  • HTML5 地理定位 - 在 iOS 上无法始终工作

    目前正在使用 HTML5 地理定位 我已经在所有网络浏览器上测试了它 它似乎工作正常 然而 当我在 iPad 上测试地理定位时 它在 iPad mini 上始终有效 但当我将其放在更大的 iPad iPad 2 上时 位置似乎并不总是有效
  • 用于查找附近兴趣点的网络服务?

    我正在寻找一种付费或免费服务 可以返回按类别 例如 餐厅 过滤的给定距离 例如 10 公里 内的兴趣点 Factual http www factual com 看起来很有前途 但不支持我的国家 南非 Google Places API 仍

随机推荐

  • 使用存储过程作为 MS Access 表单记录源

    现在 我有一个数据库 带有 SQL Server 后端和 MS Access 前端 在一种表单上 我的用户的显示加载时间很慢 该表单本质上是查找用户是谁 基于他们的登录 ID 这部分有效 查看他们的访问权限 只读 v 更新等 这也有效 然后
  • 如何将范围对象插入公式中

    我想将范围对象插入公式中 一个示例应该大致如下所示 Dim x As Range Set x Range Cells 1 1 Cells 2 1 Range C1 Formula SUM x 单元格 C1 中的结果应为 SUM A1 A2
  • 在单个四开 PDF 输出中创建多页面方向

    这个想法是复制 PDF 输出rmarkdown in quarto在本例中 是在单个文档上创建多页方向 在rmarkdown我可以用这个轻松做到trick 但是 我无法在四开本中执行此操作 它会不断发送错误消息 compilation fa
  • GWT - 在共享文件夹中放置什么?

    我仍然不确定要放入什么shared文件夹 如果我正在执行 RPC 请求 并将 Pojos 从客户端发送到服务器 反之亦然 我是否必须将它们放入shared文件夹 因为它们被客户端和服务器使用 EDIT 也许我用错了术语但是当我说Pojo我其
  • 将 JQuery 确认添加到任意元素的最佳不显眼的方法

    我是 jquery 的新手 正在寻找一种好的 不显眼的方法来将 javascript confirm 的 jquery 替换添加到 HTML 元素 具体来说 我希望能够将它用于 ASP NET 按钮 LinkBut tons ImageBu
  • jqGrid 将纪元时间(从毫秒开始)显示为日期时不排序

    我使用 jqGrid 我的网格定义是这样的 colNames Type Date Message User Name Host colModel name type index type width 100 name date index
  • 如何打开和关闭自动亮度? (不重复)

    我只是想打开和关闭自动亮度 我从这段代码开始 在 onCreate 方法内 final ToggleButton autoBrightToggle ToggleButton findViewById R id brightToggle di
  • slickgrid 使用正则表达式验证列

    有一个带有列验证的简单示例 function requiredFieldValidator value if value null value undefined value length return valid false msg Th
  • 在 MEX 函数中将特征复数矩阵返回到 MATLAB,无需额外复制

    这个问题演示如何使用映射对象将双精度矩阵返回到 MATLAB 以下适用于非复杂数据 double outputPtr plhs 0 mxCreateDoubleMatrix mwSize n mwSize m mxREAL outputPt
  • 使用核心图时应用程序崩溃

    Unknown class CPTGraphHostingView in Interface Builder file 2012 01 09 16 09 34 242 ChartArea 2595 207 UIView setHostedG
  • 将函数应用于 pandas Dataframe,其返回值基于其他行

    我有一个如下所示的数据框 gt gt gt import pandas gt gt gt df pandas DataFrame region east west south west east west east west item on
  • 如何垂直对齐

    我有一个水平的 ul 我需要将每个都居中 li 垂直地在其中 我的标记如下 每个 li li 有边框 我需要项目及其内容垂直位于中间 请帮忙 我是 CSS 新手 li ul
  • Twitter认证后回调

    我正在尝试将 Twitter 集成到我的应用程序中 但我似乎无法让它工作 这是我的代码 public class OAuthForTwitter extends Activity private CommonsHttpOAuthConsum
  • NextJS 在 MDX 中导入图像

    我尝试了官方 NextJS MDX Blog 示例 https github com mdx js mdx tree master examples next 但我无法弄清楚如何设置 NextJS 配置以通过 webpack 加载图像 im
  • Visual Studio 中的私有对象

    我正在使用 Visual Studio 2019 并在 MSTest 测试项目 NET Core 中尝试使用PrivateObject测试受保护的方法 例如 我正在尝试执行以下操作 PrivateObject private new Pri
  • 将空格分隔的数字文件读入数组的快速有效的方法?

    我需要一种快速有效的方法来将带有数字的空格分隔文件读取到数组中 文件的格式如下 4 6 1 2 3 4 5 6 2 5 4 3 21111 101 3 5 6234 1 2 3 4 2 33434 4 5 6 第一行是数组的维度 行列 接下
  • Oracle Apex:在交互式报告中创建单选按钮的分步方法

    是否有一个很好的视觉教程来介绍如何在 Apex 4 2 中创建单选按钮的各个步骤 本教程在 APEX 中创建表单以在交互式报表的查询中设置变量帮助我创建表格 我正在寻找类似的表格 在我的应用程序中 我想向交互式报告的每一行添加一个单选按钮
  • 使用 Retrofit 发送带有参数的 Post 请求

    我尝试使用 Retrofit 库在 Android 上使用 API 失败 但在使用 POSTMAN 时我可以看到预期的结果 邮递员设置 api url 基础 控制器 HTTP 方法设置为 POST 单击 from data 或 x www
  • 使用 Nodejs 重试 Cassandra 中的策略

    我终于写了一个Nodejs 中 Cassandra 的重试策略 我有一个用例 只要有一个可用的单节点副本 我就需要通过将一致性修改为最低级别来允许读取和写入 我已附上更新的重试代码 retry js 中的 DowngradeRetryPol
  • 如何获取用户的地理位置?

    在许多网站上 我看到打印出我当前所在的城市 例如 你好 柏林 他们是怎么做到的 为此需要什么 我想主要部分是这里的 javascript 但是我需要什么才能在我自己的应用程序中实现这样的东西呢 或者有一些 Rails 的 gem 吗 另外