html navigator"用户拒绝地理定位"

Sag*_*ann 16 javascript html5 geolocation navigator

我有一个window.navigator的问题,每当我将以下代码作为本地html文件运行时,我收到错误代码1,"用户拒绝地理定位":

navigator.geolocation.getCurrentPosition(function(position) {
        console.log(position);
    }, function(positionError) {
        console.log(positionError);
    });
Run Code Online (Sandbox Code Playgroud)

输出来自错误函数,positionError包含:

code: 1
message: "User denied Geolocation"
Run Code Online (Sandbox Code Playgroud)

如果从某个服务器提供包含html,则不会发生这种情况.

这是预期的吗?有没有办法从本地html使用导航器?我正在尝试编写一些移动应用程序,但我也尽可能避免使用网络.

谢谢.

mar*_*ljn 23

如果您使用的是chrome,请查看以下答案:

Chrome中的HTML 5地理位置提示

看来这是file协议的安全限制.看起来您需要从服务器本地托管它.

  • `php -Slocalhost:3000`也有效. (3认同)

小智 7

一个对我有用的简单响应是简单地将我的网址从

localhost
Run Code Online (Sandbox Code Playgroud)

127.0.0.1
Run Code Online (Sandbox Code Playgroud)

Chrome 要求我确认我想分享我的位置设置,但我离开了!


小智 6

只需单击 url 左侧的小“i”符号:-(参考下图)

信息符号图

然后检查该位置是否为“阻止”。将其更改为“允许”,然后重新加载页面。

希望这可以帮助。