Jump to content

API геолокации W3C

API геолокации
Впервые опубликовано 22 декабря 2008 г .; 15 лет назад ( 22 декабря 2008 ) [1] [2]
Последняя версия Рекомендация W3C
1 сентября 2022 г .; 23 месяца назад ( 01.09.2022 ) [3]
Организация
комитет Рабочая группа по геолокации [3]
Редакторы Андрей Попеску [3]
Домен Информация о географическом местоположении
Веб-сайт www .w3 .org /ТР /геолокация-API /

API геолокации W3C — это попытка Консорциума Всемирной паутины (W3C) стандартизировать интерфейс для получения информации о географическом местоположении для клиентского устройства. [3] Он определяет набор объектов, соответствующих стандарту ECMAScript , которые при выполнении в клиентском приложении определяют местоположение клиентского устройства посредством консультации с серверами информации о местоположении , которые прозрачны для интерфейса прикладного программирования (API). Наиболее распространенными источниками информации о местоположении являются IP-адрес , Wi-Fi и Bluetooth MAC-адрес , радиочастотная идентификация (RFID), местоположение соединения Wi-Fi или система глобального позиционирования устройства (GPS) и GSM / CDMA идентификаторы сот . Местоположение возвращается с заданной точностью в зависимости от наилучшего доступного источника информации о местоположении.

Результат W3C Geolocation API обычно дает 4 свойства местоположения, включая широту и долготу (координаты), высоту (высоту) и точность [собранной позиции], которые зависят от источников местоположения. [ нужна ссылка ]

Развертывание в веб-браузерах

[ редактировать ]

Веб-страницы могут напрямую использовать API геолокации, если веб-браузер его реализует. Исторически сложилось так, что некоторые браузеры могли получить поддержку через Google Gears плагин , но его поддержка была прекращена в 2010 году, а серверный API, от которого он зависел, перестал отвечать на запросы в 2012 году. [4] [5]

API геолокации идеально подходит для веб-приложений для мобильных устройств, таких как смартфоны . На настольных компьютерах API геолокации W3C работает в Firefox начиная с версии 3.5, Google Chrome , [6] Опера 10.6, [7] Интернет Эксплорер 9.0, [8] и Safari 5. На мобильных устройствах работает на Android (прошивка 2.0+), iOS , Windows Phone и Maemo . API геолокации W3C также поддерживается Opera Mobile 10.1, доступной для устройств Android и Symbian (S60 поколений 3 и 5) с 24 ноября 2010 года. [9] Браузеры изначально разрешали доступ к API в незащищенных контекстах, но в контексте безопасных контекстов [10] браузеры, например Chrome, [11] теперь вообще требуют безопасного соединения.

Google Gears обеспечил поддержку геолокации для старых и несовместимых браузеров, включая Internet Explorer 7.0+ в качестве плагина Gears и Google Chrome, в котором Gears реализована изначально. Он также поддерживал геолокацию на мобильных устройствах в виде плагина для браузера Android (до версии 2.0) и Opera Mobile для Windows Mobile . Однако API геолокации Google Gears несовместим с API геолокации W3C и больше не поддерживается.

Источники местоположения

[ редактировать ]

API геолокации не предоставляет информацию о местоположении. Информация о местоположении получается устройством (например, смартфоном, ПК или модемом), которое затем передается через API для переноса в браузер. Обычно геолокация пытается определить положение устройства, используя один из этих нескольких методов.

GPS (система глобального позиционирования)
Это происходит с любым устройством, имеющим возможности GPS. Смартфон с возможностями GPS и режимом высокой точности, скорее всего, получит отсюда данные о местоположении. GPS рассчитывает информацию о местоположении по спутниковому сигналу. Имеет высочайшую точность; в большинстве Android-смартфонов точность может достигать 10 метров.
Местоположение мобильной сети
Отслеживание мобильного телефона используется, если мобильный телефон или беспроводной модем используется без встроенного чипа GPS.
Система позиционирования Wi-Fi
Если Wi-Fi используется в помещении, система позиционирования Wi-Fi наиболее вероятным источником является . Некоторые точки Wi-Fi имеют возможности служб определения местоположения.
Местоположение IP-адреса
Местоположение определяется на основе ближайшего общедоступного IP-адреса на устройстве (которым может быть компьютер, маршрутизатор, к которому оно подключено, или поставщик интернет-услуг (ISP), который использует маршрутизатор). Местоположение зависит от доступной информации об IP-адресе, но во многих случаях, когда IP-адрес скрыт за трансляцией сетевых адресов интернет-провайдера , точность достигается только на уровне города, региона или даже страны.

Выполнение

[ редактировать ]

Хотя реализация не указана, API геолокации W3C построен на существующих технологиях и находится под сильным влиянием API геолокации Google Gears. Пример: реализация геолокации в Firefox. [12] использует поставщика сетевых местоположений Google. [5] Google Gears Geolocation работает, отправляя набор параметров, которые могут подсказать, где находится физическое местоположение пользователя, на сервер поставщика сетевых местоположений, который по умолчанию предоставляется Google (code.l.google.com). [13] Некоторые из параметров представляют собой списки обнаруженных вышек мобильной связи и сетей Wi-Fi, все с измеренной мощностью сигнала. Эти параметры инкапсулируются в сообщение нотации объектов JavaScript ( JSON ) и отправляются поставщику сетевых расположений через HTTP POST. На основе этих параметров поставщик сетевого местоположения может рассчитать местоположение. Обычно эта информация о местоположении используется для обеспечения контроля доступа, локализации и настройки контента, анализа трафика, контекстной рекламы и предотвращения кражи личных данных. [14]

Пример кода

[ редактировать ]

Простой код JavaScript , который проверяет, реализован ли в браузере API геолокации, а затем использует его для получения текущего положения устройства. этот код создает функцию, которую можно вызвать в HTML, используя <body onload="geoFindMe()">:

const geoFindMe = () => {
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(success, error, geoOptions);
    } else {
        console.log("Geolocation services are not supported by your web browser.");
    }
}

const success = (position) => {
    const latitude = position.coords.latitude;
    const longitude = position.coords.longitude;
    const altitude = position.coords.altitude;
    const accuracy = position.coords.accuracy;
    console.log(`lat: ${latitude} long: ${longitude}`);
}

const error = (error) => {
    console.log(`Unable to retrieve your location due to ${error.code}: ${error.message}`);
}

const geoOptions = {
    enableHighAccuracy: true,
    maximumAge: 30000,
    timeout: 27000
};

См. также

[ редактировать ]
  1. ^ «История публикации спецификации API геолокации, 2-е издание — W3C» . нд . Проверено 21 апреля 2021 г.
  2. ^ Попеску, Андрей (22 декабря 2008 г.). «Спецификация API геолокации» . W3C . Рабочая группа по геолокации . Проверено 21 апреля 2021 г.
  3. ^ Jump up to: а б с д Касерес, Маркос; Грант, Рейли (1 сентября 2022 г.). «Спецификация API геолокации» . W3C . Рабочая группа по геолокации . Проверено 8 февраля 2024 г.
  4. ^ «API геолокации: API Gears: Код Google» . Гугл-код . 9 июля 2009 года. Архивировано из оригинала 14 февраля 2012 года . Проверено 21 апреля 2021 г.
  5. ^ Jump up to: а б «GeolocationAPI — gears — обеспечивает геолокацию устройства, на котором работает веб-браузер с поддержкой Gears. — Улучшение вашего веб-браузера — хостинг проектов Google» . Гугл-код . nd Архивировано из оригинала 22 декабря 2015 года . Проверено 21 апреля 2021 г.
  6. ^ «Новая стабильная версия Chrome: добро пожаловать, Mac и Linux!» . Блог Google Chrome . 25 мая 2010 года . Проверено 21 апреля 2021 г.
  7. ^ Кляйнхаут, Хуиб (1 июля 2021 г.). «Опера 10.60 выходит в финал» . Моя Опера . Программное обеспечение Опера . Архивировано из оригинала 9 ноября 2011 года . Проверено 21 апреля 2021 г.
  8. ^ ieblog (17 февраля 2011 г.). «API геолокации W3C в IE9 — IEBlog — Главная страница сайта — Блоги MSDN» . IEBlog . Архивировано из оригинала 19 февраля 2011 года . Проверено 21 апреля 2021 г.
  9. ^ Opera.com (25 ноября 2010 г.). «Opera ускоряет просмотр страниц на Symbian» . Архивировано из оригинала 4 ноября 2011 года . Проверено 21 апреля 2021 г.
  10. ^ «Безопасные контексты» . W3.org . Проверено 13 октября 2022 г.
  11. ^ «Намерение удалить: использование геолокации небезопасным источником» . Группы.Google.com . Проверено 13 октября 2022 г.
  12. ^ «Сообщает ли Firefox мое местоположение веб-сайтам? | Поддержка Mozilla» . Мозилла Фаерфокс . Мозилла. нд . Проверено 21 апреля 2021 г.
  13. ^ «WebScanNotes.com: API геолокации W3C» . ВебСканНотес . nd Архивировано из оригинала 12 ноября 2012 года . Проверено 21 апреля 2021 г.
  14. ^ Кинг, Кевин Ф. (8 июня 2010 г.). «Личная юрисдикция, интернет-торговля и конфиденциальность: широко распространенные правовые последствия современных технологий геолокации» (опубликовано 9 июня 2010 г.). ССНН   1622411 . Проверено 21 апреля 2021 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 11968459699771d00a65c2e7e088ead7__1719420660
URL1:https://arc.ask3.ru/arc/aa/11/d7/11968459699771d00a65c2e7e088ead7.html
Заголовок, (Title) документа по адресу, URL1:
W3C Geolocation API - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)