地理定位铬50+的局部发展

时间:2016-10-27 23:38:55

标签: javascript google-chrome geolocation

我正在开发一个网站,需要通过MACOSX上的本地开发环境使用navigator.geolocation对象。我正在使用Chrome 53.考虑到地理位置被阻止在任何不是HTTPS的地方我怎么想在本地开发我的网站? Google Developers网站引用:

  

这会影响本地发展吗?

     

不应该,localhost已被宣布为"可能是安全的"在   规范和我们的案例地理位置请求在顶层提供   over localhost仍然有效。

这就是我所看到的:

Geolocation console warnings

有什么想法吗? (除了切换浏览器)

3 个答案:

答案 0 :(得分:5)

http://localhost被视为安全起源,因此您无需执行任何操作,地理定位将起作用。

如果您正在使用指向localhost的其他主机名(例如:http://mysite.test),那么您应该使用以下选项从命令行运行chrome:--unsafely-treat-insecure-origin-as-secure="http://mysite.test"

示例

google-chrome --unsafely-treat-insecure-origin-as-secure="http://yoursite.test"

有关Deprecating Powerful Features on Insecure Origins

的更多详情

答案 1 :(得分:0)

使用file:协议。在设置--allow-file-access-from-files标志的情况下启动Chrome,请参阅Jquery load() only working in firefox?。在Settings选择Content settings,滚动至Location,然后选择Ask when a site tries to track your physical location (recommended)

答案 2 :(得分:0)

这个问题的答案是在XAMPP中设置VirtualHost以使用SSL引擎。这个问题已在这里得到解答:How do I use https (SSL) in XAMPP while using virtual hosts

然后,这允许Geolocation在使用XAMPP的本地开发环境中通过HTTPS运行。