78 lines
3.0 KiB
Markdown
78 lines
3.0 KiB
Markdown
# test-php-rest-api-user
|
||
|
||
**Тестовое задание REST API на PHP**
|
||
|
||
### [Postman](https://www.postman.com/material-observer-62618807/workspace/public-data/collection/37579698-ff75f993-cc82-4704-aea4-612718b8a06b?action=share&creator=37579698)
|
||
|
||
## Установка / Запуск
|
||
|
||
### Первый способ (простой)
|
||
1. Открыть корневую директорию сайта (в которой файл `installed`)
|
||
2. Открыть консоль в данной директории
|
||
3. Выполнить комманду `php -S 0.0.0.0:8888`
|
||
4. Теперь сайт доступен по адресу [http://localhost:8888](http://localhost:8888)
|
||
|
||
### Второй способ (сложнее)
|
||
1. Установить `nginx` и `php-fpm`
|
||
2. Поместить содержимое сайта в нужную директорию
|
||
3. Настроить **nginx** так, как этот делается для **Wordpress**
|
||
4. Теперь сайт доступен по адресу который указан в nginx (обычно это [http://localhost:80](http://localhost:80))
|
||
|
||
|
||
## Конфигурация
|
||
Все необходимое для настройки и конфигурации сайта находится в директории `config`
|
||
|
||
### `0000.root.php`
|
||
Содержит базовую информацию о сайте (не важную для API)
|
||
|
||
### `0001.db.php`
|
||
Содержит настройки подключения к Базе Данных
|
||
|
||
### `0005.user.php`
|
||
Содержит конфигурацию для работы с пользователями
|
||
|
||
|
||
## Документация API
|
||
|
||
### POST `/api/v1/createUser`
|
||
Создание пользователя
|
||
|
||
Параметр | Описание
|
||
--- | ---
|
||
login | Обязательное поле (1-32 символа)
|
||
password | Обязательное поле (от 8 символов)
|
||
|
||
|
||
### POST `/api/v1/authUser`
|
||
Авторизация и получение токена
|
||
|
||
Параметр | Описание
|
||
--- | ---
|
||
login | Обязательное поле (1-32 символа)
|
||
password | Обязательное поле (от 8 символов)
|
||
|
||
|
||
### GET `/api/v1/getUser`
|
||
Получение информации о пользователе
|
||
|
||
Параметр | Описание
|
||
--- | ---
|
||
login | Обязательное поле (1-32 символа)
|
||
|
||
|
||
### PATCH `/api/v1/updateUserInfo`
|
||
Обновление поля info у пользователя
|
||
|
||
Параметр | Описание
|
||
--- | ---
|
||
token | Обязательное поле (токен, который выдали при авторизации)
|
||
newInfo | Обязательное поле (без ограничений)
|
||
|
||
|
||
### DELETE `/api/v1/deleteUser`
|
||
Удаление пользователя
|
||
|
||
Параметр | Описание
|
||
--- | ---
|
||
token | Обязательное поле (токен, который выдали при авторизации)
|