在客户端实现了状态管理以后,须要设计一下服务器端了。数据库
以前全部的存储都是使用的本地浏览器缓存,这样一不当心清理缓存以后就没了。仍是放在服务器上比较合适。浏览器
这就须要处理用户注册、登陆、session 的问题。不过在现阶段还不是核心的功能,在开发阶段能够只设置单个用户。缓存
本节主要记录一下主要功能的 API 设计。要点就是要以一个统一的结构来规划 API,为以后实际编码提升效率。服务器
参考了以前抱同窗大腿作的项目,设计了几个主要 API 的请求 url、数据格式以及返回值。session
举几个例子:数据库设计
POST /task
复制代码
Parameterspost
{
"name": "Fruit",
"desc": "Eat fruit every day",
"type": "task",
"isOneTime": false,
"score": 2,
"maxTimes": 3
}
复制代码
When isOneTime
is true
, maxTimes
will be set to 1.测试
Responseui
Status: 201 Created
{
"taskId": 1
}
复制代码
DELETE /projects/:projectId
复制代码
Response编码
Status: 200 OK
{}
复制代码
POST /projects/:projectId/logs
复制代码
Parameters
{
"userId": 1,
"taskId": 1
}
复制代码
Response
Status: 201 Created
{
"projectId": 1
}
复制代码
有了一个详细的文档,就可以在以后的开发阶段快速按计划实现。
在接下来的文章中,将会记录数据库设计、服务端结构以及 API 开发测试。
系列文章:
React + MobX + Electron + Node.js + MongoDB 全栈项目开发实践(零)前言
React + MobX + Electron + Node.js + MongoDB 全栈项目开发实践(一)
React + MobX + Electron + Node.js + MongoDB 全栈项目开发实践(二)容许 decorator
React + MobX + Electron + Node.js + MongoDB 全栈项目开发实践(三)使用 MobX 实现流畅数据流