调用定位的时候,怎么去掉定位权限授权弹窗?

image.png
在PC端浏览器上使用百度地图调用new BMap.GeolocationControl()控件,网页是http的,但是在点击调用的时候会弹窗提示定位授权,每次点击都有,网页又不能改为https,所以请教一下各位大佬该怎么解决这个问题呢?
开始的时候想着直接换成navigator.geolocation.getCurrentPosition()去获取经纬度后手动把地图定位到这里,但是这个方法在http里的chrome浏览器是无效的,所以放弃了这个想法

阅读 1.7k
2 个回答

没办法,涉及隐私的必定会有弹窗。除非说用户主动修改Chrome浏览器的设置,去默认允许当前站点的授权。

如果网页不能改为https,那么可以考虑使用其他的定位方式,如IP定位、WIFI定位等。这些定位方式可能不太准确,但可以提供一个大概的位置信息。可以通过调用百度地图提供的API获取位置信息,然后手动将地图定位到这个位置。

谷歌浏览器,可以尝试在地址栏中输入chrome://flags/#unsafely-treat-insecure-origin-as-secure,将"将不安全的来源视为安全"设置为启用,这样可以允许浏览器在http网页上使用安全的定位服务,但是这种做法并不安全,因此谨慎使用。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏