当我在页面加载后调用它时:
navigator.geolocation.getCurrentPosition(success, error, options)
它会抛出错误:
[违规]仅响应用户手势请求地理位置信息。
我在Mac上使用Chrome v65。我需要在页面加载时共享用户的位置。这适用于已经同意共享其位置的用户。
如果我在Chrome的Web控制台中模拟该位置,它可以通过getCurrentPosition或watchposition可靠地始终获取该位置。我注意到不同的wifi连接也更可靠地提供了这些信息。任何人都可以添加任何有关这方面的见解吗?
答案 0 :(得分:1)
违规只是解释了会发生什么:由于安全原因,调用 getCurrentPosition 应该是由用户的意图触发,例如点击按钮获取当前位置。因此,Chrome将阻止在没有用户手势的情况下获取网页加载地理位置信息的请求。
的以下资源用户对页面加载时自动请求其位置的页面不信任或混淆。不是在页面加载时自动请求用户的位置,而是将请求绑定到用户的手势,例如点击“查找我附近的商店”按钮。确保手势清楚明确地表达了对用户位置的需求。