Миграция

Переход с ip-api.com

ip-api.com завоевал аудиторию по-настоящему простым форматом ответа: плоский JSON-объект на каждый запрос с полями country, regionName, city, lat, lon, isp и query, содержащим проверенный IP-адрес, практически без вложенности. Благодаря этой плоскости он часто становился первым выбором для всех, кто добавлял в проект базовую IP-геолокацию и не хотел изучать более сложную схему.

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

Совместимый хост ip-api в My Geocode точно воспроизводит плоскую структуру полей, включая country, regionName, city, lat, lon, isp и query, и единственное отличие в содержимом касается текста об авторских правах, условиях и конфиденциальности. Справочные сведения на странице /compatibility/ip-api/. Код, который читает response.city или response.isp напрямую, не разворачивая вложенных объектов, должен продолжить работать после замены хоста и ключа.

Что конкретно меняется при этой миграции:

  • Аутентификация переходит на ключ, передаваемый в заголовке X-API-Key, через Authorization: Bearer, HTTP Basic auth или в параметре запроса, вместо публичного поиска без аутентификации или с мягкими ограничениями
  • Квота теперь видна прямо в каждом ответе через заголовки вроде X-Quota-Limit, X-Quota-Used и X-Quota-Reset, и её не нужно угадывать по периодическому ограничению скорости
  • Дополнительные поля (сведения об угрозах для IP и более подробная информация о сети) доступны при добавлении mg_extras=1 или заголовка X-MG-Extras и не меняют плоскую структуру, которую уже разбирает ваш код

Доступно 2 500 бесплатных запросов в день вообще без ключа, и каждый ключ также получает 2 500 бесплатных запросов в день с учётом по сети, будь то IPv4 (по /24) или IPv6 (по /48), общих для использования с ключом и без ключа из этой сети. Сверх этого лимита действует предоплаченный баланс по 0,0001 € за запрос или ключ Unlimited за 50 € в месяц, и все эндпоинты, включая этот совместимый хост, стоят одинаково.

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