API предоставляет информацию об IP-адресах, городах, провайдерах и их взаимосвязях. Возможности включают получение данных из внешнего API, работы с базой данных, добавление, удаление и обновление информации.
Проект использует следующие зависимости:
-
Склонируйте репозиторий:
git clone https://github.com/TimoxGagarin/ip-position.git
-
Перейдите в каталог проекта:
cd ip-position
-
Соберите проект:
mvn clean install
-
Запустите приложение:
mvn spring-boot:run
Приложение будет доступно по адресу http://localhost:8080.
- Конечная точка:
GET /api/ip/get/all
- Описание: Получить список всех IP-адресов с дополнительной информацией.
- Конечная точка:
GET /api/ip/get/external_api?ip={ip_address}
- Описание: Получить информацию об IP-адресе из внешнего API.
- Параметры:
ip_address
: IP-адрес.
- Конечная точка:
GET /api/ip/get/db?ip={ip_address}
- Описание: Получить информацию об IP-адресе из базы данных.
- Параметры:
ip_address
: IP-адрес.
- Конечная точка:
GET /api/ip/get/providers?cityName={city_name}
- Описание: Получить список провайдеров в указанном городе.
- Параметры:
cityName
: Название города.
- Конечная точка:
GET /api/ip/get/cities?providerIsp={provider_isp}
- Описание: Получить список городов, обслуживаемых указанным провайдером.
- Параметры:
providerIsp
: Название провайдера (ISP).
- Конечная точка:
POST /api/ip/post
- Описание: Добавить новую информацию об IP-адресе.
- Тело запроса: JSON-объект с данными об IP-адресе.
- Конечная точка:
DELETE /api/ip/delete?id={ip_info_id}
- Описание: Удалить информацию об IP-адресе.
- Параметры:
id
: Идентификатор IP-адреса.
- Конечная точка:
PUT /api/ip/put?id={ip_info_id}
- Описание: Обновить информацию об IP-адресе.
- Параметры:
id
: Идентификатор IP-адреса.
-
Получение всей информации об IP-адресах:
GET /api/ip/get/all
-
Получение информации об IP-адресе из внешнего API:
GET /api/ip/get/external_api?ip={ip_address}
- Пример:
GET /api/ip/get/external_api?ip=8.8.8.8
-
Получение информации об IP-адресе из базы данных:
GET /api/ip/get/db?ip={ip_address}
- Пример:
GET /api/ip/get/db?ip=8.8.8.8
-
Получение провайдеров, предоставляющих услуги в указанном городе:
GET /api/ip/get/providers?cityName={city_name}
- Пример:
GET /api/ip/get/providers?cityName=New York
-
Получение городов, обслуживаемых указанным провайдером:
GET /api/ip/get/cities?providerIsp={provider_isp}
- Пример:
GET /api/ip/get/cities?providerIsp=Comcast
-
Добавление новой информации об IP-адресе:
POST /api/ip/post
- Тело запроса: JSON-объект с данными об IP-адресе.
-
Удаление информации об IP-адресе:
DELETE /api/ip/delete?id={ip_info_id}
- Пример:
DELETE /api/ip/delete?id=1
-
Обновление информации об IP-адресе:
PUT /api/ip/put?id={ip_info_id}
- Пример:
PUT /api/ip/put?id=1