Совместимая замена ip-api.com
JSON-эндпоинт ip-api является одним из самых копируемых форматов определения IP. ipapi.mygeocode.com возвращает те же названия полей для адресов IPv4 и IPv6, причём по HTTPS даже на бесплатных ключах, чего ip-api не предлагает.
Измените одно имя хоста
| Исходный хост |
|
|---|---|
| Используйте вместо него | ipapi.mygeocode.com |
| Параметр ключа | key (необязательно: любой адрес получает 2 500 запросов в день без ключа; укажите здесь свой ключ My Geocode, чтобы пользоваться балансом, пакетами и историей использования) |
curl "http://ip-api.com/json/8.8.8.8?fields=status,country,countryCode,city,lat,lon,timezone,isp,query"curl "https://ipapi.mygeocode.com/json/8.8.8.8?fields=status,country,countryCode,city,lat,lon,timezone,isp,query"Почему переходят
Бесплатный эндпоинт ip-api работает только по HTTP, только для некоммерческого использования и с лимитом 45 запросов в минуту. Здесь HTTPS, коммерческое использование разрешено, и любой адрес получает 2 500 запросов в день, прежде чем придётся что-либо платить, с ключом или без.
Та же бесплатная квота, с ключом или без. Запросы к ipapi.mygeocode.com учитываются в тех же 2 500 бесплатных запросах в день, которые ваш адрес или ваш ключ получает на наших собственных эндпоинтах. Сверх этого: предоплаченный баланс по 0,0001 € за запрос или 50 € в месяц за ключ Unlimited. Для регистрации нужен только адрес электронной почты.
Эндпоинты
| Путь на ipapi.mygeocode.com | Что делает | На основе |
|---|---|---|
/json/{ip} | Определение по адресу, IPv4 или IPv6 | Определение IPv4 |
/json/ | Определение вызывающей стороны | Определение IPv4 |
/batch (POST, JSON array) | Пакетное определение, до 100 | Определение IPv4 |
Пример ответа
Вот что возвращает запрос выше. Названия полей, вложенность и типы соответствуют ip-api. Наши только данные за ними.
{
"status": "success",
"country": "United States",
"countryCode": "US",
"region": "CA",
"regionName": "California",
"city": "Mountain View",
"zip": "94043",
"lat": 37.4056,
"lon": -122.0775,
"timezone": "America/Los_Angeles",
"isp": "Google LLC",
"org": "Google Public DNS",
"as": "AS15169 Google LLC",
"query": "8.8.8.8"
}Подробности и отличия
Для первых 2 500 запросов в день ключ не нужен. Чтобы использовать ключ My Geocode, укажите его там, где был ключ ip-api.com: в параметре запроса key. Заголовок X-API-Key, Authorization: Bearer и базовая HTTP-аутентификация (ключ в качестве имени пользователя) тоже работают на каждом хосте, поэтому клиентские библиотеки со своим способом аутентификации продолжают работать без изменений.
Ответы содержат те поля, которые возвращает ip-api.com, и ничего больше, поэтому ответ можно передать коду, который уже разбирает ip-api.com. Наши дополнительные данные (высота рельефа, угрозы и сведения о сети) доступны по запросу: добавьте mg_extras=1 в запрос или отправьте X-MG-Extras: 1.
- По умолчанию ответ содержит собственный набор полей ip-api в его порядке.
fieldsпринимает названия или числовую битовую маску, аlangпереводит названия стран и континентов на de, es, pt-BR, fr, ja, zh-CN и ru. - Работают все форматы:
json,xml,csvиline. - Неверный адрес возвращает HTTP 200 со
status: fail, как и в ip-api; код статуса меняется только при отказах из-за ключа или квоты. - Пакетный эндпоинт принимает до 100 записей с
fieldsиlangдля каждой записи, как и ip-api; каждый адрес в пакете считается одним запросом. - Запросите
reverse, и для этого адреса будет определено имя хоста. - Названия регионов возвращаются в виде коротких кодов для США, Канады и Австралии; для остальных стран в наборе данных есть только полное название.
Если ваш клиент зависит от поля или поведения, которого здесь нет, сообщите нам. Пробелы в совместимости исправляются быстро, потому что обычно они невелики.
Другие совместимые хосты
- Google Maps
- Bing Maps
- HERE
- Mapbox
- Geocode.Farm
- Nominatim (OSM)
- OpenCage
- LocationIQ
- Geoapify
- TomTom
- MapQuest
- Geocodio
- PositionStack
- ipinfo
- ipstack
- Open-Elevation
Как работают совместимые хосты, обзор и совместимые замены для библиотек JavaScript.