用户管理接口
注册接口
请求方法:POST
URL:/api/user/register
参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| username | String | 用户名 |
| password | String | 密码 |
| String | 邮箱 | |
| phone | String | 手机号 |
| verification_code | String | 验证码短信验证码 |
响应数据:
- 成功返回
1 | { |
- 失败返回
1 | { |
获取短信验证码接口
请求方法:get
URL:/api/user/sendmsg
参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| phone | String | 手机号 |
响应数据:
- 成功返回
1 | { |
- 失败返回
1 | { |
登陆接口
请求方法:POST
URL:/api/user/login
参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| username | String | 用户名 |
| password | String | 密码 |
| captcha | String | 图形验证码 |
响应数据:
- 成功返回
1 | { |
- 失败返回
1 | { |
获取图形验证码
请求方法:GET
请求路径:/api/captcha
请求参数:无
响应数据:(返回图形验证码的图片)
收藏接口
添加到收藏夹
请求方法:POST
URL:/api/bookmarks
参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户ID |
| Article_id | String | 文章ID |
响应数据:
- 成功时返回:
1 | { |
- 失败时返回:
1 | { |
从收藏夹中移除博客
请求方法:DELETE
请求路径:/api/bookmarks
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户ID |
| Article_id | String | 文章ID |
响应数据:
- 成功时返回:
1 | { |
- 失败时返回:
1 | { |
获取用户的收藏夹列表
请求方法:GET
请求路径:/api/bookmarks
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户ID |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19{
"code": "200",
"msg": "success!",
"data": [
{
"blog_id": "xxxxxxxxxx",
"blog_title": "博客标题",
"blog_author": "作者",
"blog_date": "发布日期"
},
{
"blog_id": "xxxxxxxxxx",
"blog_title": "博客标题",
"blog_author": "作者",
"blog_date": "发布日期"
},
...
]
}失败时返回:
1
2
3
4{
"code": "200",
"msg": "fail"
}
评论接口
获取博客评论列表
请求方法:GET
请求路径:/api/comments
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| article_id | String | 博客ID |
响应数据:
成功时返回:wc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20{
"code": "200",
"data": [
{
"comment_id": "xxxxxxxxxx",
"user_id": "xxxxxxxxxx",
"username": "评论者用户名",
"comment_content": "评论内容",
"comment_date": "评论日期"
},
{
"comment_id": "xxxxxxxxxx",
"user_id": "xxxxxxxxxx",
"username": "评论者用户名",
"comment_content": "评论内容",
"comment_date": "评论日期"
},
...
]
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
发布博客评论
请求方法:POST
请求路径:/api/comments
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| article_id | String | 博客ID |
| user_id | String | 用户 ID |
| comment_content | String | 评论内容 |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11{
"code": "200",
"msg": "success",
"data": {
"comment_id": "xxxxxxxxxx",
"user_id": "xxxxxxxxxx",
"username": "评论者用户名",
"comment_content": "评论内容",
"comment_date": "评论日期"
}
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
删除博客评论
请求方法:DELETE
请求路径:/api/comments
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| comment_id | String | 评论 ID |
响应数据:
成功时返回:
1
2
3
4{
"code": "success",
"msg": "success"
}失败时返回:
1
2
3
4{
"code": "error",
"msg": "fail"
}
私信
发送私信
请求方法:POST
请求路径:/api/msgs
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| sender_id | String | 发送者用户 ID |
| receiver_id | String | 接收者用户 ID |
| msg_content | String | 私信内容 |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11{
"code": "200",
"msg": "success!",
"data": {
"msg_id": "xxxxxxxxxx",
"sender_id": "xxxxxxxxxx",
"receiver_id": "xxxxxxxxxx",
"msg_content": "私信内容",
"msg_date": "发送日期"
}
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
获取私信列表
请求方法:GET
请求路径:/api/msgs
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户 ID |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20{
"code": "200",
"data": [
{
"msg_id": "xxxxxxxxxx",
"sender_id": "xxxxxxxxxx",
"receiver_id": "xxxxxxxxxx",
"msg_content": "私信内容",
"msg_date": "发送日期"
},
{
"msg_id": "xxxxxxxxxx",
"sender_id": "xxxxxxxxxx",
"receiver_id": "xxxxxxxxxx",
"msg_content": "私信内容",
"msg_date": "发送日期"
},
...
]
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
删除私信
请求方法:DELETE
请求路径:/api/msgs
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| msg_id | String | 私信 ID |
响应数据:
成功时返回:
1
2
3
4{
"code": "200",
"msg": "success"
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
搜索
搜索博客
请求方法:GET
请求路径:/api/search/blogs
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| keyword | String | 搜索关键词 |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18{
"code": "200",
"data": [
{
"blog_id": "xxxxxxxxxx",
"blog_title": "博客标题",
"blog_content": "博客内容",
"blog_date": "博客发布日期"
},
{
"blog_id": "xxxxxxxxxx",
"blog_title": "博客标题",
"blog_content": "博客内容",
"blog_date": "博客发布日期"
},
...
]
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "搜索博客失败,请稍后重试!"
}
搜索用户
请求方法:GET
请求路径:/api/search/users
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| keyword | String | 搜索关键词 |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16{
"code": "200",
"data": [
{
"user_id": "xxxxxxxxxx",
"username": "用户名",
"email": "用户邮箱"
},
{
"user_id": "xxxxxxxxxx",
"username": "用户名",
"email": "用户邮箱"
},
...
]
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "搜索用户失败,请稍后重试!"
}
点赞
点赞博客
请求方法:POST
请求路径:/api/likes/blogs
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户 ID |
| article_id | String | 博客 ID |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8{
"code": "200",
"msg": "success",
"data": {
"user_id": "xxxxxxxxxx",
"blog_id": "xxxxxxxxxx"
}
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
取消点赞博客
请求方法:DELETE
请求路径:/api/likes/blogs
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户 ID |
| article_id | String | 博客ID |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8{
"code": "200",
"msg": "success",
"data": {
"user_id": "xxxxxxxxxx",
"blog_id": "xxxxxxxxxx"
}
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
获取博客点赞列表
请求方法:GET
请求路径:/api/likes/blogs
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| arcticle_id | String | 博客 ID |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16{
"code": "200",
"data": [
{
"user_id": "xxxxxxxxxx",
"username": "用户名",
"email": "用户邮箱"
},
{
"user_id": "xxxxxxxxxx",
"username": "用户名",
"email": "用户邮箱"
},
...
]
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
文章推送接口
获取所有文章
请求方法:GET
请求路径:/api/articles
请求参数:无
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20{
"code": "200",
"data": [
{
"article_id": "xxxxxxxxxx",
"title": "文章标题",
"content": "文章内容",
"author": "作者",
"created_at": "创建时间"
},
{
"article_id": "xxxxxxxxxx",
"title": "文章标题",
"content": "文章内容",
"author": "作者",
"created_at": "创建时间"
},
...
]
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
获取单篇文章
请求方法:GET
请求路径:/api/articles/{article_id}
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| article_id | String | 文章 ID |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10{
"code": "200",
"data": {
"article_id": "xxxxxxxxxx",
"title": "文章标题",
"content": "文章内容",
"author": "作者",
"created_at": "创建时间"
}
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
获取用户的所有文章
请求方法:GET
请求路径:/api/articles/users/{user_id}
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户 ID |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20{
"code": "200",
"data": [
{
"article_id": "xxxxxxxxxx",
"title": "文章标题",
"content": "文章内容",
"author": "作者",
"created_at": "创建时间"
},
{
"article_id": "xxxxxxxxxx",
"title": "文章标题",
"content": "文章内容",
"author": "作者",
"created_at": "创建时间"
},
...
]
}失败时返回:
1
2
3
4{
"code": "200",
"msg": "fail"
}
用户管理
创建用户
请求方法:POST
请求路径:/api/users
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| username | String | 用户名 |
| password | String | 密码 |
| String | 邮箱 |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9{
"status": "200",
"msg": "success",
"data": {
"user_id": "xxxxxxxxxx",
"username": "用户名",
"email": "用户邮箱"
}
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
获取用户列表
请求方法:GET
请求路径:/api/users
请求参数:无
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16{
"code": "200",
"data": [
{
"user_id": "xxxxxxxxxx",
"username": "用户名",
"email": "用户邮箱"
},
{
"user_id": "xxxxxxxxxx",
"username": "用户名",
"email": "用户邮箱"
},
...
]
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
更新用户信息
请求方法:PUT
请求路径:/api/users/{user_id}
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户ID |
| username | String | 用户名 |
| password | String | 密码 |
| String | 邮箱 |
响应数据:
成功时返回:
1
2
3
4
5
6
7
8
9{
"code": "200",
"msg": "success",
"data": {
"user_id": "xxxxxxxxxx",
"username": "新的用户名",
"email": "新的用户邮箱"
}
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
删除用户
请求方法:DELETE
请求路径:/api/users/{user_id}
请求参数:
| 参数名 | 类型 | 注释 |
|---|---|---|
| user_id | String | 用户ID |
响应数据:
成功时返回:
1
2
3
4{
"code": "200",
"msg": "success"
}失败时返回:
1
2
3
4{
"code": "400",
"msg": "fail"
}
分析接口
获取分享链接
请求方法:get
请求路径:
1 | GET : /api/share/link |
参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| article_id | string | 文章ID |
响应
成功
1 | { |
失败
1 | { |
2. 获取分享统计数据
请求方法:
1 | GET /api/share/analytics |
参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| article_id | string | 文章的唯一标识 |
| start_date | string | 开始日期 |
| end_date | string | 结束日期 |
响应
成功
1 | jsonCopy Code{ |
失败
1 | jsonCopy Code{ |
举报
1. 创建举报信息
请求方法
1 | POST /api/report |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| object_type | string | 举报对象类型 |
| object_id | string | 被举报用户的ID |
| reason | string | 举报原因 |
| user_id | string | 用户的ID |
响应
成功
1 | { |
失败
1 | { |
2. 处理举报信息
请求方法
1 | PUT /api/report/{report_id} |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| report_id | string | 举报信息的唯一标识 |
| status | string | 处理状态 |
| handled_by | string | 处理人员的唯一标识 |
响应
成功
1 | { |
失败
1 | { |
3. 获取举报信息详情
请求方法
1 | GET /api/report/{report_id} |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| report_id | string | 举报信息的唯一标识 |
响应
成功
1 | { |
失败
1 | { |
通知
1. 创建通知
请求方法
1 | POST /api/notification |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户 |
| message | string | 通知内容 |
响应
成功
1 | { |
失败
1 | { |
2. 获取通知列表
请求方法
1 | GET /api/notification |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
| start_date | string | 开始日期 |
| end_date | string | 结束日期 |
响应
成功
1 | { |
失败
1 | { |
3. 标记通知为已读
请求方法
1 | PUT /api/notification/{notification_id} |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| notification_id | string | 信息ID |
响应
成功
1 | { |
失败
1 | { |
分析
1. 获取文章统计信息
请求方法
1 | GET /api/article/{article_id}/analytics |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| article_id | string | 文章ID |
响应
成功
1 | { |
失败
1 | { |
2. 获取热门文章列表
请求方法
1 | GET /api/articles/popular |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| limit | int | 获取文章数量 |
| category | string | 文章分类(可选) |
响应
成功
1 | { |
失败
1 | { |
3. 获取作者文章统计信息
请求方法
1 | GET /api/author/{author_id}/analytics |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| author_id | string | 作者的唯一标识 |
响应
成功
1 | { |
失败
1 | { |
个人主页
1. 获取用户信息
请求方法
1 | GET /api/user/{user_id} |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
响应
成功
1 | { |
失败
1 | { |
2. 更新用户信息
请求
1 | PUT /api/user/{user_id} |
参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
| username | string | 用户名 |
| full_name | string | 用户全名 |
| string | 邮箱地址 | |
| avatar_url | string | 头像图片地址 |
| bio | string | 用户个人简介 |
响应
成功
1 | { |
失败
1 | { |
3. 获取用户文章列表
请求
1 | GET /api/user/{user_id}/articles |
参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
| limit | int | 获取文章数量 |
| category | string | 文章分类(可选) |
响应
成功
1 | { |
失败
1 | { |
历史记录
1. 获取用户历史记录列表
请求方法
1 | GET /api/user/{user_id}/history |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
| limit | int | 获取记录数量 |
响应
成功
1 | { |
失败
1 | { |
2. 添加历史记录
请求方法
1 | POST /api/user/{user_id}/history |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
| article_id | string | 文章ID |
| title | string | 文章标题 |
| category | string | 文章分类 |
响应
成功
1 | { |
失败
1 | { |
3. 清空历史记录
请求方法
1 | DELETE /api/user/{user_id}/history |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
响应
成功
1 | { |
失败
1 | { |
个人设置
1. 获取用户个人设置信息
请求方法
1 | GET /api/user/{user_id}/settings |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
响应
成功
1 | { |
失败
1 | { |
2. 更新用户个人设置信息
请求方法
1 | PUT /api/user/{user_id}/settings |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
| username | string | 用户名 |
| string | 邮箱地址 | |
| notification | object | 通知设置 |
| notification.enable_email | bool | 启用邮件通知 |
| notification.enable_push | bool | 启用推送通知 |
| privacy | object | 隐私设置 |
| privacy.public_profile | bool | 公开个人资料 |
| privacy.show_email | bool | 显示邮箱地址 |
响应
成功
1 | { |
失败
1 | { |
关注
1. 获取用户关注列表
请求方法
1 | GET /api/user/{user_id}/following |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
响应
成功
1 | { |
失败
1 | { |
2. 添加用户关注
请求方法
1 | POST /api/user/{user_id}/following |
参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
| following_id | string | 要关注用户的ID |
响应
成功
1 | { |
失败
1 | { |
3. 取消用户关注
请求方法
1 | DELETE /api/user/{user_id}/following/{following_id} |
请求参数
| 参数名 | 类型 | 描述 |
|---|---|---|
| user_id | string | 用户ID |
| following_id | string | 要取消关注用户ID |
响应
成功
1 | { |
失败
1 | { |