地理定位不适用于移动设备,但适用于我的桌面
The geolocation isnt working on mobile but works on my desktop
我正在尝试在我的项目上实现地理定位,我已经有了 api 和其他东西,所有必要的代码,但是在移动设备上,每当我尝试访问它只显示的位置时,它就会在 google 地图说 "Error: The geolocation service failed." 但在我的桌面上它工作正常。
本以为我的桌面会发生同样的事情,提示请求访问 gps 的权限,但没有任何反应
@Pedro Teixeira - 如果您 运行 此应用来自网络服务器而不是本地 HTML 页面。这就是为什么这对您不起作用。
如果您的站点不是 HTTPS 或至少您调用地理定位的页面不是 HTTPS,为什么地理定位将不起作用?
Chrome public 打算弃用 non-secure 来源上的地理定位等强大功能,我们希望其他人也能效仿。
从 Chrome 50 开始,Chrome 不再支持使用 HTML5 地理定位 API 从 non-secure 连接传送的页面获取用户位置.这意味着进行地理定位 API 调用的页面必须从安全上下文(例如 HTTPS)提供服务。
这是一个重要问题,因为它会直接影响任何需要使用地理定位 API 且不通过 https 提供服务的站点,但我们确实认为这是对所有用户都有益的更改网络。 post 应该可以帮助您理解推理以及如何进行。
此更改从何时开始生效?
此更改自 Chrome50(2016 年 4 月 20 日太平洋标准时间中午 12 点)起生效。
我们为什么要进行此更改?
位置是敏感数据!需要 HTTPS 才能保护用户位置数据的隐私。如果用户的位置可从 non-secure 上下文中获得,网络上的攻击者将能够知道该用户的位置。这严重损害了用户隐私。
这会影响到谁?
这会影响当前使用通过 HTTP (non-secure) 提供的页面中的地理位置 API 的任何页面。如果嵌入在 HTTP 页面中,它还会影响使用地理位置 API 的 HTTPS iframe。 (您将无法使用共享的 HTTPS-delivered 框架进行 polyfill。)
Google 开发者网站上的响应
如果您想使用 HTML5 Geolocation API,或者如果您的站点已经使用 Geolocation API,请迁移使用 Geolocation API 的页面对 HTTPS 的调用,确保它们在安全的上下文中使用。
有许多后备选项可用于获取不受此更改影响的用户位置,例如 Google 地图地理定位 API、GeoIP(例如,还有其他基于地理的解决方案)和 user-entered 邮政编码。但是,我们强烈建议确保持续访问地理定位的最佳途径是迁移到 HTTPS。
请关注此link了解更多信息
https://developers.google.com/web/updates/2016/04/geolocation-on-secure-contexts-only
我正在尝试在我的项目上实现地理定位,我已经有了 api 和其他东西,所有必要的代码,但是在移动设备上,每当我尝试访问它只显示的位置时,它就会在 google 地图说 "Error: The geolocation service failed." 但在我的桌面上它工作正常。
本以为我的桌面会发生同样的事情,提示请求访问 gps 的权限,但没有任何反应
@Pedro Teixeira - 如果您 运行 此应用来自网络服务器而不是本地 HTML 页面。这就是为什么这对您不起作用。
如果您的站点不是 HTTPS 或至少您调用地理定位的页面不是 HTTPS,为什么地理定位将不起作用? Chrome public 打算弃用 non-secure 来源上的地理定位等强大功能,我们希望其他人也能效仿。
从 Chrome 50 开始,Chrome 不再支持使用 HTML5 地理定位 API 从 non-secure 连接传送的页面获取用户位置.这意味着进行地理定位 API 调用的页面必须从安全上下文(例如 HTTPS)提供服务。
这是一个重要问题,因为它会直接影响任何需要使用地理定位 API 且不通过 https 提供服务的站点,但我们确实认为这是对所有用户都有益的更改网络。 post 应该可以帮助您理解推理以及如何进行。
此更改从何时开始生效? 此更改自 Chrome50(2016 年 4 月 20 日太平洋标准时间中午 12 点)起生效。
我们为什么要进行此更改? 位置是敏感数据!需要 HTTPS 才能保护用户位置数据的隐私。如果用户的位置可从 non-secure 上下文中获得,网络上的攻击者将能够知道该用户的位置。这严重损害了用户隐私。
这会影响到谁? 这会影响当前使用通过 HTTP (non-secure) 提供的页面中的地理位置 API 的任何页面。如果嵌入在 HTTP 页面中,它还会影响使用地理位置 API 的 HTTPS iframe。 (您将无法使用共享的 HTTPS-delivered 框架进行 polyfill。)
Google 开发者网站上的响应
如果您想使用 HTML5 Geolocation API,或者如果您的站点已经使用 Geolocation API,请迁移使用 Geolocation API 的页面对 HTTPS 的调用,确保它们在安全的上下文中使用。
有许多后备选项可用于获取不受此更改影响的用户位置,例如 Google 地图地理定位 API、GeoIP(例如,还有其他基于地理的解决方案)和 user-entered 邮政编码。但是,我们强烈建议确保持续访问地理定位的最佳途径是迁移到 HTTPS。
请关注此link了解更多信息 https://developers.google.com/web/updates/2016/04/geolocation-on-secure-contexts-only