Chrome地理位置无法在任何网站上运行

时间:2013-11-07 15:01:30

标签: javascript html5 google-chrome geolocation

我正在尝试基于地理位置构建网站,我正在考虑使用html5地理位置。

我构建了w3c代码,它在谷歌浏览器上对我不起作用,然后我注意到在谷歌浏览器上没有一个在线示例适用于我:

http://www.w3schools.com/html/html5_geolocation.asp

http://html5demos.com/geo

奇怪的是,我确实看到提示,询问我是否要授予访问位置信息的权限,但之后它不起作用。我检查了我的Chrome设置,它是“询问是否授予网站权限”。

相反,在同一台机器上的safari上工作正常。

我正在iMac(2012年底)与小牛队一起,如果这可以帮助某种方式。

谢谢!

编辑:

我已经尝试过这个解决方案:W3C Geolocation API not working in Chrome

1 个答案:

答案 0 :(得分:0)

HTTP上的地理位置将不再有效,因为不推荐使用非安全地理位置:

  

我们希望开始将https://w3c.github.io/webappsec-secure-contexts/中的概念应用于已经发布且不符合(新的,当时不存在)要求的功能。特别是,这要求强大的功能只能在“安全起源”(例如HTTPS)上访问,其中完整的祖先链也是安全的。

     

我们首先要求为这些现有功能提供安全的来源:

Geolocation — requires secure origins as of M50
Device motion / orientation
EME
getUserMedia
AppCache
  

与逐渐将HTTP标记为非安全性一样,我们希望根据使用阈值逐步将这些功能迁移到仅安全状态,从最低使用率开始向更高用途发展。我们还希望在UX中逐渐表明,对于非安全来源,这些功能已被弃用。

     

每个功能的弃用策略尚未确定,并且可能因功能而异。我们目前不知道阈值是什么,或者这些特征对于什么类型的起源有多大的用处。我们正在收集数据,并会在收到数据时向您报告。除了最终的弃用之外,目前根本没有确定的计划。我们打算这样做可以激发公众讨论解决这种弃用问题的最佳方法。所以,到那时,我们很想听听社区的想法。

     

测试弃用的强大功能   在不推荐使用某项功能后,如果您是需要在没有有效证书的服务器上继续测试功能的开发人员,则有两种选择:

     

localhost被视为HTTP上的安全源,因此如果您能够从localhost运行服务器,则应该能够在该服务器上测试该功能。

     

您可以使用--unsafely-treat-insecure-origin-as-secure =“http://example.com”标志运行chrome(将“example.com”替换为您实际要测试的来源),将该来源视为本次会议的安全。请注意,您还需要包含--user-data-dir = / test / only / profile / dir来创建一个新的测试配置文件,以使该标志生效。

<强>参考