Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Комментарий: Migrated to Confluence 5.3

Геолокация определяет местоположение клиента по IP-адресу.

Запрос

Для пользователей бесплатных подсказок DaData.ru:

Без форматирования
curl -X GET \
  -H "Accept: application/json" \
  -H "Authorization: Token ${API_KEY}" \
  https://dadata.ru/api/v2/detectAddressByIp?ip=213.180.193.3

Для пользователей платных подсказок DaData.ru:

Без форматирования
curl -X GET \
  -H "Accept: application/json" \
  -H "Authorization: Token ${API_KEY}" \
  http://suggestions.dadata.ru/suggestions/api/4_1/rs/detectAddressByIp?ip=213.180.193.3

Для пользователей standalone-подсказок:

Без форматирования
curl -X GET \
  -H "Accept: application/json" \
  http://ВАШ_СЕРВЕР:ПОРТ/suggestions/api/4_1/rs/detectAddressByIp?ip=213.180.193.3

Включить страницу
_Заголовки (REST)
_Заголовки (REST)

Параметры

ПараметрОбязательный?Описание
ipнетIP-адрес. Если не указан, используется IP-адрес из HTTP-запроса

Ответ

Объект вида:

Блок кода
{
    "location": {
        "data": { ... },
        "value": "83.220.54.223"
    }
}

Где location.value — это IP-адрес клиента, а location.data  объект адреса . Если местоположение определить не удалось, то  location.data = null.

Алгоритм определения IP адреса следующий:

Без форматирования
Если IP указан в параметре ip
ТО
   использовать его
ИНАЧЕ
   Если IP указан в HTTP-заголовке X-Forwarded-For
   ТО
       использовать его
    ИНАЧЕ
       вернуть IP сокета соединения

Местоположение определяется только для российских адресов.