【node.js后台api项目】(九)获取文章分类列表接口
1、接口相关信息
- 路由:
/article/cates
- method: get
- 请求头需要携带
Authorization
字段进行身份认证
2、 定义路由和处理函数
- 创建
/router/artcate.js
路由模块,并初始化如下的代码结构:
const express = require('express')
const router = express.Router()
// 获取文章分类列表路由
router.get('/cate', (req, res) => {
res.send('ok')
})
module.exports = router
- 在 app.js 中导入并使用文章分类的路由模块:
// 导入文章分类路由
const artcateRouter = require('./router/artcate')
// 使用文章管理路由
app.use('/article', artcateRouter)
- 创建 /router_handler/artcate.js 路由处理函数模块,并初始化如下的代码结构:
// 获取文章分类列表 路由处理函数
const getArticleCates = (req, res) => {
res.send('ok')
}
// 向外导出路由处理函数
module.exports = {
getArticleCates
}
- 修改
/router/artcate.js
中的代码如下:
const express = require('express')
const router = express.Router()
// 导入 文章分类 路由处理函数模块
const artcate_handler = require('../router_handler/artcate')
// 获取文章分类列表路由
router.get('/cates', artcate_handler.getArticleCates)
module.exports = router
老规矩,测试一下
3、获取文章分类列表数据
- 在 /router_handler/artcate.js 头部导入数据库操作模块:
// 导入操作mysql数据的模块
const db = require('../db/index')
导入配置文件中的表名称
// 导入配置中的表名称
const { table } = require('../config')
- 定义 SQL 语句:
// 根据分类的状态,获取所有未被删除的分类列表数据
// is_delete 为 0 表示没有被 标记为删除 的数据
const sql = `select * from ${table.article_cate_Table} where is_delete=0 order by id asc`
- 调用 db.query() 执行 SQL 语句:
db.query(sql, (err, results) => {
if (err) return res.cc(err)
res.send({
status: 0,
message: '获取文章分类列表数据成功~',
data: results
})
})
测试结果