- Знакомство с проектом
- Настройка проекта
- Написать REST API отдающий статический JSON
- Получить и отобразить данные на клиенте
- Сверстать представление
- Отобразить данные динамически с помощью jQuery
- Использовать БД в REST API
- Реализовать полноценный SPA на React.js
/api/projects
GETполучить все проекты- ответ
[
{
"id": 1,
"name": "My project",
"tasks": []
}
]POSTсоздать новый проект- запрос
{
"name": "My project"
}- ответ
{
"id": 1,
"name": "My project",
"tasks": []
}/api/projects/{project_id}
GETполучить проект- ответ
{
"id": 1,
"name": "My project",
"tasks": []
}PUTизменить проект- запрос
{
"id": 1,
"name": "My awesome project",
"tasks": []
}- ответ
{
"id": 1,
"name": "My awesome project",
"tasks": []
}DELETEудалить проект- ответ
[
{
"id": 1,
"name": "My project",
"tasks": []
}
]/api/projects/{project_id}/tasks
GETполучить все задания в проекте- ответ
[
{
"id": 1,
"projectID": 1,
"name": "My task",
"deadline": 1457529375881,
"done": false
}
]POSTсоздать новое задание в проекте- запрос
{
"name": "My task"
}- ответ
{
"id": 1,
"projectID": 1,
"name": "My task",
"deadline": 1457529375881,
"done": false
}/api/projects/{project_id}/tasks/{task_id}
GETполучить задание из проекта- ответ
{
"id": 1,
"projectID": 1,
"name": "My task",
"deadline": 1457529375881,
"done": false
}PUTизменить задание в проекте- запрос
{
"done": true
}- ответ
{
"id": 1,
"projectID": 1,
"name": "My task",
"deadline": 1457529375881,
"done": true
}DELETEудалить задание из проекта- ответ
[
{
"id": 1,
"projectID": 1,
"name": "My task",
"deadline": 1457529375881,
"done": false
}
]