备忘录系统——需求篇

Person In Your Note

需求分析

设计思路:

  1. 设计数据库(表结构)
  2. 设计前后端交互接口
  3. 实现服务器端和客户端的逻辑

功能简介

​ 1.只支持单个用户

​ 2.实现针对文章的增删查改

​ 3.实现针对标签的增删查改

模块划分:

客户端:网页的形式

服务器端:HTTP协议

数据库:MySQL

客户端端的具体展现形式(网页)

  1. 展现备忘录列表页面
  2. 展现备忘录详情页面
  3. 管理备忘录页面

例如:当用户在客户端(网页) 执行某个操作的时候,比如新增博客,此时就会由客户端给服务器发送HTTP请求,请求中包含了操作的行为

服务器根据这个行为来完成对数据的具体操作

服务器端

数据库设计

  1. 创建一个数据库

  2. 一个备忘录表

  3. 一个标签表

使用代码 MySQL C API 来完成数据库操作

设计前后端的交互 API

基于 HTTP 协议进行扩展,创建自定制协议

服务器接口

一. 博客管理

  1. 新增博客
  2. 获取博客列表
  3. 获取某个博客的详细内容
  4. 修改博客
  5. 删除博客

二. 标签管理

  1. 新增标签
  2. 删除标签
  3. 查看所有标签
服务器设计方式
  1. 传统的 API 设计方式: 使用 query_string 来进行传递信息

例如: GET/blog?method=insert&title=…&content=…

  1. restful 风格的 API 设计方式:使用不同的HTTP方法 来表达不同的语义

    a) 使用 POST 方法表示新增

    b) 使用 GET 方法表示查看

    c) 使用 PUT 方法表示修改

    d) 使用 DELETE 方式表示删除

3.使用 path 表示要操作的资源

4.使用 json 来组织body 中的数据

新增博客
 POST/blog 

{

	title: xxx,

	content: xxx,

	create_time: xxx,

	tag_id: xxx,

}



HTTP/1.1 200 OK

body

{

	ok: true/false,

	reason: "失败原因"

}
博客列表(查看所有博客)
请求(使用 tag_id 参数筛选指定标签下的博客):
GET /blog 获取所有
GET /blog?tag_id=1	按照标签来修改
响应:
HTTP/1.1 200 OK
[
	{        
		"blog_id": 1,
		"blog_url": "/blog/1",
		"title": "备忘录1",
		"tag_id": 1,
		"create_time": "2019/05/14 12:00"
	},
	{
	"blog_id": 2,
	"blog_url": "/blog/2",
	"title": "备忘录2",
	"tag_id": 1,
	"create_time": "2019/05/14 12:00"
	}
]
查看某个博客 展示博客内容
请求:
GET /blog/:blog_id	类似于 /blog/1
响应:
HTTP/1.1 200 OK
{
	"blog_id": 1,
	"title": "备忘录1",
	"content": "备忘录的 markdown 格式内容",
    "create_time": "2019/05/14 12:00""tag_id": 1
}
删除博客
请求:
DELETE /blog/:blog_id
响应:
HTTP/1.1 200 OK
{
	"ok": true,
}
修改博客
请求:
PUT /blog/:blog_id
{
	"title": "备忘录1",
	"content": "备忘录的 markdown 格式内容",
	"tag_id": 1
}
响应:
HTTP/1.1 200 OK
{
	"ok": true,
}	
新增标签
请求:
POST /tag
{
	"tag_name": "小故事",
}
响应:
HTTP/1.1 200 OK
{
	"ok": true,
}
删除标签
请求:
DELETE /tag/:tag_id
响应:
HTTP/1.1 200 OK
{
	"ok": true,
}
标签列表(查看所有标签)
请求:
GET /tag
响应:
HTTP/1.1 200 OK
[
	{
		"tag_id": 1,
		"tag_name": 小故事"
	},
	{
		"tag_id": 2,
		"tag_name": "有关于他(她)"
	}
]

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值