2

Возможный дубликат:
HTML5 точная геолокация

Я не уверен, стоит ли задавать этот вопрос здесь или нет.

В html5 есть функция navigator.geolocation.getCurrentPosition которая может определить вашу позицию. Я протестировал эту функцию в IE, Chrome и Firefox. Хотя IE кажется не очень точным, Firefox и Chrome смогли определить мою позицию с ошибкой всего в 10 метров. Учитывая, что я использую ноутбук, подключенный к Интернету через маршрутизатор wimax через беспроводное соединение, и я уверен, что на моем ноутбуке нет устройств GPS, у вас есть идеи, как они находят мое местоположение.

Я уверен, что это не основано на IP, так как все сайты, работающие с IP, просто дают результаты далеко от моей реальной позиции. и это не похоже на какой-то протокол, который браузеры используют для запроса моего интернет-провайдера, поскольку IE не дает таких же результатов, как другие.

1 ответ1

0

Geolocation API определяет высокоуровневый интерфейс для информации о местоположении, связанной только с устройством, на котором размещена реализация, например широта и долгота. Сам API не зависит от базовых источников информации о местоположении. Общие источники информации о местоположении включают в себя Глобальную систему определения местоположения (GPS) и местоположение, выведенное из сетевых сигналов, таких как IP-адрес, RFID, MAC-адреса WiFi и Bluetooth, а также идентификаторы сот GSM/CDMA, а также пользовательский ввод. Не дается никаких гарантий, что API возвращает фактическое местоположение устройства.

http://dev.w3.org/geo/api/spec-source.html

-

Кроме того, ответ @ fmark в StackOverflow содержит более подробную информацию о том, как это реализовано в Firefox. Реализация варьируется в зависимости от браузера и платформы.

Данные, отправляемые Firefox в Google, предназначены для всех видимых точек доступа, общедоступных или частных. Для каждой обнаруженной точки доступа она отправляет следующие данные на https://www.google.com/loc/json:

"mac_address": "01-23-45-67-89-ab",
"signal_strength": 8,
"age": 0,
"SSID": "MyAccessPoint"

{. , , }

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .