Skip to content

Sneaky server which handles TODO list store and rises some HTTP errors

Notifications You must be signed in to change notification settings

dmitryweiner/todo-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Учебный сервер, который временами генерирует ошибки

« Сервер с синдромом Туретта. »

  • С вероятностью 30% сервер возвращает случайную ошибку.
  • С вероятностью 5% сервер рвёт соединение.
  • Сервер отвечает с задержкой 0-2 с.

Технологии

Установка

npm i

Запуск

Система аутентификации отключена (все роуты доступны):

npm start

Система аутентификации включена, /todos доступно только после аутентификации:

npm start -- useAuth

Обращение к серверу

При отправке запросов с телом в формате JSON требуется отправлять заголовок Content-Type:

const response = await fetch(url, {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json'
    },
    body: JSON.stringify({
        title: 'Кушоц'
    })
});
const data = await response.json();

API entries

Элементы списка дел /todos

GET /todos

Получение списка всех элементов.

[
  {
    "id": "dfh2vml5el6br7g8",
    "title": "Покормить цветы",
    "isChecked": true
  },
  {
    "id": "pq3mv5n6soy7h8",
    "title": "Полить кота",
    "isChecked": false
  }
]

GET /todos/:id

Получение элемента по ID.

{
  "id": "dfh2vml5el6br7g8",
  "title": "Покормить цветы",
  "isChecked": true
}

POST /todos

Создание нового элемента.

{
  "title": "Вырастить картошку"
}

PUT /todos/:id

Модификация элемента.

{
  "isChecked": true
}

DELETE /todos/:id

Удаление элемента.

Аутентификация. /auth

GET /auth

Проверка текущего состояния аутентификации.

  • Залогинен:
{
  "isAuth": true
}
  • Незалогинен:
{
  "isAuth": false
}

POST /auth

Логин в систему:

{
  "username": "admin",
  "password": "123"
}

В учебных целях логин и пароль только такие.

Возвращает либо код 200, либо 401.

DELETE /auth

Выход из системы.

About

Sneaky server which handles TODO list store and rises some HTTP errors

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published