1 Star 0 Fork 0

liuyidana/WeiXinstudy

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
api.js 2.05 KB
一键复制 编辑 原始数据 按行查看 历史
liuyidana 提交于 2021-11-21 10:06 . --
'use strict'
const titbit = require('titbit')
const app = new titbit({
debug: true,
})
/**
路由不指定动作、使用HTTP状态码表示请求状态、使用HTTP请求方法表示要执行的操作。
*
*
*/
/**
/user 遵循RESTful设计
GET /user/:id
GET /user
POST /user 注册
PUT /user/:id
相当于删除用户,同时要删除所有相关数据,相当于注销
DELETE /user/:id
但是此功能很少有网站提供。
状态码200表示成功,否则失败。
*
*/
/**
路由指明了动作:
/delete-cache GET
/clear-cache GET
这种方案容易遭受CSRF攻击。
遵循RESTful:
DELETE /cache
*
*
*/
/** 以上 解决的是 路由设计问题 ***/
app.get('/content/:id', async c => {
/**
{
id: '',
conent: '',
title: ''
}
*/
//返回具体资源
//没有则返回404状态码
})
app.get('/content', async c => {
/**
[
{
id: ''
title: '',
update_time: ''
},
{
id: ''
title: '',
update_time: ''
},
{
id: ''
title: '',
update_time: ''
}
]
*/
//返回列表
//没有也要返回空数组
})
app.post('/content', async c => {
//创建资源
//成功后返回创建的资源ID。
/*
失败返回:
400 提交数据错误或其他错误情况导致无法完成
500 服务端处理失败
403 没有操作权限,若是用户验证
...
*/
})
/**
* 提交参数:请求体应该提交一个JSON格式的说明。
* 对于更新操作来说,可能更新某个字段,也可能更新整个内容。
* 或者还有其他的更新需求。
*/
app.put('/content/:id', async c => {
//更新资源
//成功后返回成功更新的数据条数。
//失败参考post说明
})
app.delete('/content/:id', async c => {
//删除资源
//成功后返回成功删除的数据条数。
//失败返回值参考post说明
})
/** ---------- 以上是有些理想化的API设计 -------- */
/**
/admin
/selfadmin
错误的示例:/update-passwd
*
*
*/
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/liuyidana/wei-xinstudy.git
git@gitee.com:liuyidana/wei-xinstudy.git
liuyidana
wei-xinstudy
WeiXinstudy
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385