HTML5 Геолокация отличается в Chrome и Firefox - PullRequest
1 голос
/ 09 марта 2012

Я пытаюсь использовать функцию геолокации в HTML5.Я пробовал это, например: html5demos.com и при открытии его с помощью Firefox 10.0.2 под Ubuntu меня находит город, которым я не являюсь.С Chrome он меня правильно находит.Город, который находит меня, довольно далеко от города, в котором я нахожусь, хотя я был в этом городе месяц назад.

У кого-нибудь есть идеи, что может происходить?Как работает HTML5-Geolocation (с точки зрения программирования), который может не работать в этом аспекте?

1 Ответ

5 голосов
/ 01 апреля 2012

Я подтвердил тот же эффект.Хром прибивает меня слишком близко ... страшно близко.Тогда как Firefox пропустил около 500 миль и целый штат.

Так что же дает?

Когда вы изучите документацию геолокации HTML5, вы обнаружите, что API по определению не зависит от источника вашей службы геолокации.

Этоэто может быть устройство с поддержкой GPS, это может быть сеть вышек сотовой связи, это может быть через точки доступа WIFI, или это может быть через Geo-IP.

Так что в качестве фона я выдвинул гипотезу, что Chromeиспользовал точки доступа WIFI, но Firefox возвращался к GeoIP.(Многие сайты легко дадут вам GeoIP ... и, конечно же, мой GeoIP обнаруживается в Худ-Орегоне или где-то далеко от того места, где я на самом деле. - Полагаю, в этом виноват провайдер.)

Итакс этой информацией в руке, когда я проверяю свое географическое положение с помощью Firefox, достаточно уверенно: Hood Oregon.

Но, как я уже сказал, когда я проверяю свое географическое местоположение с помощью Chrome: Практически на месте.

ЧтоДо сих пор я не упомянул, но что важно для моей гипотезы, так это то, что до этого времени я проводил свои тесты, используя свой ноутбук с поддержкой WIFI.

Включен для проверки 2:

Отключите WIFI на ноутбуке, подключите ноутбук к маршрутизатору с помощью кабеля Ethernet и повторите вышеописанный тест геолокации с использованием Chrome.

Результаты: Chrome помещает меня туда, где делал Firefox, далеко в ХудеOregon.

Эмпирический вывод:

Chrome рассчитывает ваше географическое местоположение с использованием горячих точек WIFI, если оно доступно, тогда как у Firefox этого нет.Флаг «Высокая точность», который по умолчанию имеет значение «Ложь».Возможно, это так же просто, как Chrome устанавливает значение True, а FireFox - нет.

Дополнительный вопрос:

Как можно отследить поток данных, чтобы проверить это?

...