Пример API для выполнения простых операций со счётом клиента.
Для его использования Вам необходимо иметь установленный docker-compose
.
Выполните ./launch.sh
из папки с проектом (.../service_api
).
Сервер будет запущен на localhost:8080
.
Реализованные методы:
- /api/ping (работоспособность сервиса)
- /api/add (пополнение баланса)
- /api/substract (уменьшение баланса)
- /api/status (остаток по балансу, открыт счет или закрыт)
Для работы с API необходимо добавлять следующий заголовок в HTTP запрос: Host: service_api
.
Общий шаблон json сообщения:
{
“status“ = <http_status>,
“result“: <bool:operation_status>,
“addition“: {},
“description“: {}
}
Поле UUID является обязательным для любого запроса (кроме /api/ping
).
Для передачи суммы, которую требуется добавить или вычесть, в поле addition
следует добавить пару 'value': <value>
.
Возможные значения http_status
:
- 200 - запрос был успешно обработан.
- 400 - некорректные поля переданного json.
- 403 - закрытый счёт.
- 404 - UUID не был найден в базе.
- 406 - недостаточное количество денег для выполнения операции.
- 500 - запрос не может быть обработан из-за ошибки на стороне сервера.
В поле description
по ключу error
будет описание ошибки.
В качестве тестового инструмента можно использовать скрипт test_api.py
.
Для этого сперва выполните pip install -r test-requirements.txt
, предварительно создав виртуальное окружение, если необходимо.
Выполните python3 test_api.py --help
для получения информации о списке возможных команд и аргументов.