Skip to content

Сервер системы ведения личного и семейного бюджета

Notifications You must be signed in to change notification settings

unvisibleman/ThriftServer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Описание

Платформа разработки

Для реализации сервера системы ведения личного и семейного бюджета используется язык PHP v5 с подключенными библиотеками для работы с сервером MySQL (для обращения к пользовательским данными) и Memchace (для хранения токенов пользователей в определенным временем жизни). В роли вебсервера выступает Apache 2.2.22 (Debian).

База данных

Для хранения и обработки данных в системе используется СУБД MySQL. На рисунке приведены спецификации таблиц физической модели данных.

thrift-db.png

Спецификация web-сервисов

Система требует, чтобы API позволяло работать со списком пользователей (добавление/удаление и аутентификация), со списком групп (создание группы, добавление пользователя в группу, удаление пользователя из группы) и со списком доходов/расходов (получение списка, добавление, редактирование и удаление записи).

POST-запрос к серверу передает данные через POST-параметры, остальные запросы (GET, PUT и DELETE) через GET.

Система возвращает данные, представленные в JSON-формате. В сообщении всегда содержится поле code с одним из значений описанных ниже. В случае ошибки поле data содержит строковое описание ошибки. Если code=200, запрос выполнен верно и это GET-запрос, то поле data содержит затребованные данные в JSON-формате.

Результат безошибочного выполнения GET запросов всегда содержит не пустое поле data. Результат безошибочного выполнения прочих запросов поле data не содержит.

  1. Путь /user

    • Метод GET — получить токен.
    • Метод POST — зарегистрироваться в системе.
    • Метод DELETE — удалить пользователя.
  2. Путь /group

    • Метод GET — получить список групп и пользователей в них.
    • Метод PUT — обновить группу.
    • Метод POST — создать группу.
    • Метод DELETE — удалить группу.
  3. Путь /item

    • Метод GET — получить записи за месяц по категории.
    • Метод PUT — изменить запись.
    • Метод POST — добавить запись.
    • Метод DELETE — удалить запись.
  4. Путь /categories

    • Метод GET — получить список суммарных расходов по категориям за указанный год-месяц.

Используемые коды ошибок:

  • 200 - запрос выполнен верно.
  • 400 - ошибка клиента: неправильная команда.
  • 401 - ошибка клиента: пользователь не авторизован.
  • 409 - ошибка клиента: коллизия.
  • 500 - ошибка сервера.

Основные свойства

Тип ЭВМ: любые, оснащенные интерпретатором языка PHP

Язык: PHP

ОС: UNIX-подобные

Объем программы: 13,6 Кб

About

Сервер системы ведения личного и семейного бюджета

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages