html навигатор "Пользователь запрещен геолокации"
У меня проблема с window.navigator, я получаю код ошибки 1 "Географическое положение пользователя отклонено" всякий раз, когда я запускаю следующий код в качестве локального HTML-файла:
navigator.geolocation.getCurrentPosition(function(position) {
console.log(position);
}, function(positionError) {
console.log(positionError);
});
Выходные данные поступают из функции ошибки, а positionError содержит:
code: 1
message: "User denied Geolocation"
Этого не происходит, если содержащий html подается с какого-либо сервера.
Это ожидается? Есть ли способ использовать навигатор из локального HTML? Я пытаюсь написать какое-нибудь мобильное приложение, но также стараюсь по возможности избегать сети.
Благодарю.
2 ответа
Если вы используете Chrome, посмотрите ответ ниже:
HTML 5 Geo Location Prompt в Chrome
Похоже, это ограничение безопасности для file
протокол. Похоже, вам нужно будет разместить его локально с сервера.
Просто нажмите на левую сторону URL на маленьком символе "i":- (см. Изображение ниже)
Затем проверьте, является ли местоположение "блоком". Измените его на "разрешить", а затем перезагрузите страницу.
Надеюсь это поможет.
Простой ответ, который работал для меня, состоял в том, чтобы просто изменить мой URL
localhost
в
127.0.0.1
Chrome попросил меня подтвердить, что я хочу поделиться настройками своего местоположения, и меня не стало!