/RestApi

Решение задания в README

Primary LanguageGo

Техническое задание

На разработку REST API

В этот раз необходимо реализовать простой API для решения квадратного уравнения вида Ax^2 + Bx + C = 0. API имеет всего 2 ресурса : /grab и /solve. Типы запросов, которые должны поддерживаться:

  • POST /grab - считать коэффициенты квадратного уравнения из тела запроса. Завершается кодом 201, а тело запроса выглядит следующим образом :
{
    "A" : 10,
    "B" : 20,
    "C" : 30
}

где "A", "B", "C" - целочисленные коэффициенты квадратного уравнения. Гарантируется, что хотя бы один из коэффициентов не равен нулю.

  • GET /solve - возвращает ответ вида (в случае, если введенные коэффициенты были 10, 20, 30):
{
    "A": 10,
    "B": 20,
    "C": 30,
    "Nroots": 0
}

где "Nroots" - количество вещественных корней уравнения с коэффициентами "A", "B", "C". Метод GET /solve возвращает ответ для последнего на данный момент уравнения, коэффициенты которого были получены при помощи POST /grab.

Вам гарантируется, что метод GET /solve будет вызываться только после того, как был осуществлен как минимум один запрос POST /grab.

Решение должно включать в себя исходники проекта .go, файл go.mod , а также коллекцию тестов из postman. БД использовать не нужно. Можно воспользоваться любым локальным хранилищем в виде мапы или слайса. Решение необходимо загрузить себе на github.com и прислать ссылку на репозиторий преподавателю в чат.