Этот репозиторий создан в рамках выполнения тестового задания. Он содержит API на Go для управления новостными статьями и связанными с ними категориями.
Подробности задания можно найти по ссылке: https://gist.github.com/bethrezen/d6f17fbb039a4366fe6baafdf189ff9a
1)Создание, обновление и удаление новостных статей
2)Присвоение категорий новостным статьям
3)Поддержка пагинации для списка новостей
4)Использование фреймворка Fiber для обработки HTTP-запросов
5)Fiber для работы с базой данных PostgreSQL
1)Go 1.22.2 или новее
2)PostgreSQL или MySQL
3)Fiber, Reform
1)Клонируйте репозиторий: git clone https://github.com/Olegsuus/news-api.git
2)Установите зависимости: Настройте подключение к базе данных в файлах config.yaml.
3)Запустите миграции базы данных:
goose -dir db/migrations postgres "user=yourusername dbname=yourdbname sslmode=disable" up
4)Соберите и запустите сервер:
go build -o server cmd/server/main.go ./server API будет доступно по адресу http:https://localhost:8080.
1)GET /list: Получить список новостей с пагинацией
2)POST /edit/:id: Редактировать новость
Пример:
curl -X POST http:https://localhost:8080/edit/1 -d '{"title": "Новое описание", "content": "Новое содержание статьи", "categories": [1, 2]}'