HTTP_Calculator — это простой HTTP-сервис для вычисления математических выражений. Сервис принимает POST-запросы с математическими выражениями и возвращает результат вычислений в формате JSON.
go run ./cmd/calc_service/...Не забудьте, надо находиться в корневой папке!
URL: http://localhost:8080/api/v1/calculate
Метод: POST
Заголовок: Content-Type: application/json
Тело запроса:
{
"expression": "expression"
}- Успешный подсчёт (200)
curl --location 'http://localhost:8080/api/v1/calculate' --header 'Content-Type: application/json' --data '{"expression":"2+2*2"}'Результат:
{
"result": 6
}- Некорректное выражение (422)
curl -X POST http://localhost:8080/api/v1/calculate ^ -H "Content-Type: application/json" ^ -d "{\"expression\": \"2+a\"}"Результат:
{
"error": "Invalid expression format"
}- Неправильный формат JSON (500)
curl -X POST http://localhost:8080/api/v1/calculate ^ -H "Content-Type: application/json" ^ -d "invalid json"Результат:
{
"error": "Internal server error"
}В проекте уже реализованы автоматические тесты для калькулятора и HTTP-обработчиков.
- Запустите тесты калькулятора:
go test ./internal/calculator- Запустите тесты обработчиков:
go test ./internal/handlers- Запустите все тесты одновременно:
go test ./...Для вопросов и предложений, пожалуйста, создайте issue на GitHub или напишите в телегу: Rodef228