Ответ 1
Если вы используете хром, ознакомьтесь с нижеприведенным ответом:
HTML 5 Запрос геоданных в Chrome
Похоже, это ограничение безопасности для протокола file
. Похоже, вам понадобится локально размещать его на сервере.
У меня проблема с 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? Я пытаюсь написать какое-то мобильное приложение, но я также стараюсь избегать сети, когда это возможно.
спасибо.
Если вы используете хром, ознакомьтесь с нижеприведенным ответом:
HTML 5 Запрос геоданных в Chrome
Похоже, это ограничение безопасности для протокола file
. Похоже, вам понадобится локально размещать его на сервере.
Простой ответ, который сработал у меня, состоял в том, чтобы просто изменить мой URL из
localhost
to
127.0.0.1
Chrome попросил меня подтвердить, что хочу поделиться своими настройками местоположения, и меня не было!
Просто нажмите на левую сторону URL на маленьком символе "i": - (см. Изображение ниже)
Затем проверьте, является ли местоположение "блоком". Измените его на "разрешить", а затем перезагрузите страницу.
Надеюсь это поможет.