我正在开发一个网站,需要通过MACOSX上的本地开发环境使用navigator.geolocation对象。我正在使用Chrome 53.考虑到地理位置被阻止在任何不是HTTPS的地方我怎么想在本地开发我的网站? Google Developers网站引用:
这会影响本地发展吗?
不应该,localhost已被宣布为"可能是安全的"在 规范和我们的案例地理位置请求在顶层提供 over localhost仍然有效。
这就是我所看到的:
有什么想法吗? (除了切换浏览器)
答案 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"
的更多详情
答案 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运行。