--- title: Использование геолокации slug: Web/API/Geolocation_API tags: - Geolocation API - Guide - Intermediate translation_of: Web/API/Geolocation_API original_slug: Web/API/Geolocation/Using_geolocation ---
{{securecontext_header}}{{DefaultAPISidebar("Geolocation API")}}

Geolocation API позволяет пользователю предоставлять своё местоположение web-приложению, если пользователь согласится предоставить его. Из соображений конфиденциальности, у пользователя будет запрошено разрешение на предоставление информации о местоположении.

Концепты и использование

Вы часто хотите получать информацию о местоположении пользователя в своём веб приложении, например, для отображения участка на карте, либо для того, чтобы показывать информацию, основанную на местоположении посетителя.

API геолокации может быть вызвано через {{domxref("Navigator.geolocation")}}; это заставит браузер пользователя вывести уведомление с запросом для доступа к текущему местоположению. Если его одобрят, то браузер сможет предоставить доступ ко всем возможностям по работе с информацией о местонахождении (например, GPS).

Тогда разработчику станут доступны несколько разных способов получения соответствующей информации:

В обоих случая, методы принимают три аргумента:

Интерфейсы

{{domxref("Geolocation")}}
Главный класс этого API — содержит методы для получения текущего местоположения пользователя, наблюдает за его изменениями и удаляет функции-наблюдатели.
{{domxref("GeolocationPosition")}}
Предоставляет месторасположение пользователя. Экземпляр GeolocationPosition, полученный при успешном вызове одного из методов {{domxref("Geolocation")}}, внутри колбэк-функции при успехе, содержит метку времени плюс экземпляр объекта {{domxref("GeolocationCoordinates")}}.
{{domxref("GeolocationCoordinates")}}
Предоставлять координаты пользователя; Экземпляр GeolocationCoordinates содержит широту, долготу и прочую важную подобную информацию.
{{domxref("GeolocationPositionError")}}
GeolocationPositionError возвращается при неуспешном вызове методов, содержащихся в {{domxref("Geolocation")}}, внутри колбэк-функции при ошибке, содержит код ошибки и сообщение.
{{domxref("Navigator.geolocation")}}
Точка входа в API. Возвращает экземпляр объекта {{domxref("Geolocation")}}, из которого становятся доступны все функции и методы.

Словари

{{domxref("PositionOptions")}}
Предоставляет объект, содержащий опции, которые можно передать как параметр в  {{domxref("Geolocation.getCurrentPosition()")}} и {{domxref("Geolocation.watchPosition()")}}.

Примеры

{{page("/ru/docs/Web/API/Geolocation_API/Using","Examples")}}

Спецификации

{{Specifications("api.Geolocation")}}

Поддержка браузерами

{{Compat("api.Geolocation")}}

Доступность

Так как местоположение, основанное на WiFi, часто предоставляется Google, API местоположения может быть не доступен в Китае. Вы можете использовать местных провайдеров, таких как Baidu, Autonavi или Tencent. Эти сервисы используют IP-адрес пользователя и/или приложение для предоставления наиболее точной позиции.

Смотрите также