如何在不触发权限弹出窗口的情况下知道用户的位置权限?

How to know users location permission without triggering permission popup?

我想使用我的用户位置来执行一些操作...

问题是我不想触发 GeoLocation API 弹出窗口以防用户没有 allowed/blocked 它,因为他会搞不懂我为什么要问它。

所以,导航到 mysite.com/page-that-needs-geolocation,应该发生的是:

  1. 将用户重定向到另一个页面 (mysite.com/why-enable-geolocation),以防他没有 allowed/blocked GeoLocation,并在那里请求许可。
  2. 将用户重定向到另一个页面 (mysite.com/enter-your-position),以防他屏蔽了 GeoLocation。
  3. 让用户继续浏览页面 (mysite.com/page-that-needs-geolocation),并使用他的地理位置。

我知道 Permission API,但它仅限于现代浏览器,我不能使用它。

是否有解决此问题的不同方法或我可以使用的其他 API?

由于浏览器的限制,目前无法做到这一点。

取消(关闭)或拒绝权限将导致相同的结果,即使您可以 re-trigger 在新会话中提出新的权限请求,前提是用户关闭了弹出窗口。