尝试获取位置时出现"Permission Denied"错误。

9 浏览
0 Comments

尝试获取位置时出现"Permission Denied"错误。

每次尝试使用此代码获取位置时,我都会收到“权限被拒绝”的错误。我无法找到代码中的任何问题,并且有趣的是,在我收到“权限被拒绝”之前,代码已经获取了我的GPS位置。这个问题是我之前问题的“后续”。请问如何解决这个问题?谢谢。

0
0 Comments

当尝试获取位置时出现“Permission Denied”错误的原因是浏览器拒绝了获取地理位置的权限。解决方法是确保网站托管在外部http://服务器上。

这段代码是一个网页,其中包含了获取用户位置并在Google地图上显示的功能。当用户访问该网页时,会尝试获取用户的地理位置信息,并在页面上显示经度和纬度。

代码中的initialize()函数在页面加载完成后被调用。它隐藏了一些元素,并调用get_position()函数来获取位置信息。

get_position()函数首先显示了一个信息,然后显示了一些元素,最后通过调用navigator.geolocation.getCurrentPosition()来获取位置信息。如果浏览器支持geolocation API,就会调用showPosition()函数显示位置信息。如果浏览器不支持geolocation API,则会弹出一个提示框。

showPosition()函数接收到位置信息后,会在页面上显示经度和纬度。

如果获取位置信息失败,会调用showError()函数。根据不同的错误类型,会隐藏不同的元素并显示相应的错误信息。

以上就是代码的功能和结构。根据代码中的注释和代码逻辑,我们可以得出结论:当页面托管在外部http://服务器上时,浏览器才会允许获取地理位置信息。如果页面托管在其他类型的服务器上,浏览器会拒绝获取地理位置的请求。

因此,要解决“Permission Denied”错误,我们需要确保将该网页托管在外部http://服务器上。这样,浏览器就会允许获取地理位置信息,从而避免出现错误。

0
0 Comments

当尝试获取位置时出现"Permission Denied"的错误。这个问题的原因是在使用navigator.geolocation.getCurrentPosition(showError, function(position) {...})时,函数的顺序不正确。getCurrentPosition的规范显示了函数的正确顺序。原因是只有成功的回调函数是必需的,它必须放在第一位。如果提供了第二个参数,它将作为错误的回调函数。第三个参数是一个选项对象。

啊!我将showError移动到了第92行,现在一切都像魔术般地正常工作了 🙂 再次感谢!

0