Писал для себя, чтобы продемонстрировать работу API и разницу между подходом REST И gRPC.
Проект очень простой и специально был написан в ручную для удобства понимания и чтения кода. Так же, проект можно со временем улучшать и делать его более самодостаточным. Таким образом, проект в будущем можно применять как для обучения, так и для создания собственного микросервиса.
👩🏫 На самом деле, такой сервис подойдет для маленьких самописных сайтов и MVP проектов. Tак как, для большей нагрузки, а так же отказоустойчивости, стоит лучше присмотреться к более новым фреимворкам.
Данный проект написан на архитектура REST.
Метод | Маршрут | Описание |
---|---|---|
GET | /api/news |
Список новостей |
POST | /api/news |
Создание новости |
GET | /api/news/:id |
Данные одной новости |
PATCH/PUT | /api/news/:id |
Обновление новости |
DELETE | /api/news/:id |
Удаление новости |
Для начала, необходимо подтянуть все зависимости командой:
composer install
Далее, следует запустить сервер командой:
php -S localhost:2345
После чего, следует создать таблицу News
в файле /db/db.sqlite3
, со следующими полями:
CREATE TABLE "News"
(
"id" INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE NOT NULL,
"title" TEXT,
"body" TEXT,
"date_create" TEXT
);
CREATE UNIQUE INDEX "sqlite_autoindex_News_1" ON "News" (id);