【Node.js+koa--后端管理系统】设计评论发布、修改、查询、删除接口

简介: 【Node.js+koa--后端管理系统】设计评论发布、修改、查询、删除接口

评论接口设计思路

微信图片_20221012214236.png

发布评论接口


① 创建新的comment评论表

CREATE TABLE IF NOT EXISTS `comment`(
  id INT PRIMARY KEY AUTO_INCREMENT,
  content VARCHAR(1000) NOT NULL,
  moment_id INT NOT NULL,
  user_id INT NOT NULL,
  comment_id INT DEFAULT NULL,
  createAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  updateAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  FOREIGN KEY(moment_id) REFERENCES moment(id) ON DELETE CASCADE ON UPDATE CASCADE,
  FOREIGN KEY(user_id) REFERENCES user(id) ON DELETE CASCADE ON UPDATE CASCADE,
  FOREIGN KEY(comment_id) REFERENCES comment(id) ON DELETE CASCADE ON UPDATE CASCADE
);

② 定义路由接口–>验证用户登录

const Router = require('koa-router')
const {
  create,
} = require('../controller/comment_controller')
const {
  verifyAuth,
} = require ('../middleware/auth_middleware')
const commentRouter = new Router({prefix:'/comment'})
// 发表评论
commentRouter.post('/',verifyAuth,create)
module.exports = commentRouter

③ Controller和Service中处理内容

微信图片_20221012214344.png微信图片_20221012214356.png

修改评论接口


① 定义理由接口

微信图片_20221012214439.png

② 验证用户登录(更新verifyPermission)


见上面(verifyAuth)


③ 验证用户权限


PS:这里原本是封装了verifyPermission中间件,现在稍作更改

定义更为符合RESTful风格的接口代码

微信图片_20221012214810.png

④ Controller和Service中处理内容微信图片_20221012214841.png

微信图片_20221012214912.png

回复评论接口


① 定义路由接口

微信图片_20221012215002.png

② 验证用户登录


见上面(verifyAuth)


③ Controller和Service中处理内容

微信图片_20221012215039.png微信图片_20221012215051.png

删除评论接口


① 定义路由接口

微信图片_20221012215120.png

② 验证用户登录和验证用户权限微信图片_20221012215143.png

③ Controller和Service中处理内容

微信图片_20221012215219.png

查询动态时,同时显示评论信息


① 查询多个动态时,显示评论的个数

微信图片_20221012215254.png

② 查询单个动态时,显示评论的列表

微信图片_20221012215320.png

PS:

附上完整的路由接口代码。

const Router = require('koa-router')
const {
  create,
  reply,
  update,
  remove,
  list
} = require('../controller/comment_controller')
const {
  verifyAuth,
  verifyPermission
} = require ('../middleware/auth_middleware')
const commentRouter = new Router({prefix:'/comment'})
// 发表评论
commentRouter.post('/',verifyAuth,create)
// 回复评论
commentRouter.post('/:commentId/reply',verifyAuth,reply)
// 修改评论
commentRouter.patch('/:commentId',verifyAuth,verifyPermission,update)
// 删除评论
commentRouter.delete('/:commentId', verifyAuth, verifyPermission, remove);
// 获取评论列表
commentRouter.get('/',list)
module.exports = commentRouter
相关文章
|
3天前
|
前端开发 JavaScript
【node写接口】 通过node 快速搭建一个服务器、get请求、post请求 小白入门
【node写接口】 通过node 快速搭建一个服务器、get请求、post请求 小白入门
15 4
若依修改,若依部署在本地运行时的注意事项,后端连接了服务器,本地的vue.config.js要先改成localhost:端口号与后端匹配,部署的时候再改公网IP:端口号
若依修改,若依部署在本地运行时的注意事项,后端连接了服务器,本地的vue.config.js要先改成localhost:端口号与后端匹配,部署的时候再改公网IP:端口号
|
9天前
|
前端开发 NoSQL 数据库
部署常用的流程,可以用后端,连接宝塔,将IP地址修改好,本地只要连接好了,在本地上前后端跑起来,前端能够跑起来,改好了config.js资料,后端修改好数据库和连接redis,本地上跑成功了,再改
部署常用的流程,可以用后端,连接宝塔,将IP地址修改好,本地只要连接好了,在本地上前后端跑起来,前端能够跑起来,改好了config.js资料,后端修改好数据库和连接redis,本地上跑成功了,再改
|
17天前
|
前端开发 数据库 索引
前后端分离------后端创建笔记(05)用户列表查询接口(下)
前后端分离------后端创建笔记(05)用户列表查询接口(下)
|
9天前
|
前端开发 JavaScript Linux
若依修改之后,无法访问前端项目如何解决,只能访问后端的接口,我的接口8083,端不显示咋解决?在vue.config.js文件中的映射路径要跟后端匹配,到软件商店里找到Ngnix配置代理,设80不用加
若依修改之后,无法访问前端项目如何解决,只能访问后端的接口,我的接口8083,端不显示咋解决?在vue.config.js文件中的映射路径要跟后端匹配,到软件商店里找到Ngnix配置代理,设80不用加
|
14天前
|
SQL Java 数据库连接
大事件后端项目28------文章分类列表查询(条件分页)
大事件后端项目28------文章分类列表查询(条件分页)
|
1月前
|
SQL JavaScript 前端开发
简单用Nodejs + express 编写接口
【6月更文挑战第3天】该文介绍了如何在Node.js和Express中创建GET和POST接口。首先,简要提到了准备工作,建议查阅上一篇文章。接着展示了GET接口的示例,说明可以直接在浏览器中请求。然后,详细解释了POST接口的步骤,包括引入Express模块、设置路由处理程序、解析请求体及处理请求。最后,强调了编写接口时应注意错误处理、安全性、中间件使用、路由组织、日志记录、性能优化和测试等关键点。作者以肥晨的身份结尾,鼓励关注其分享的前端学习资料和技术动态。
156 1
|
17天前
|
JavaScript
fastadmin js里获取后端传的参数
fastadmin js里获取后端传的参数
21 0
|
2月前
|
JavaScript 前端开发 NoSQL
构建基于Node.js的全栈应用:从前端到后端的完整指南
【5月更文挑战第24天】本文是关于使用Node.js构建全栈应用的指南,涵盖前端(React或Vue)、后端(Node.js + Express)和数据库(MongoDB)的选型与实现。文章介绍了项目结构、前端组件化开发、后端API接口编写、前后端联调及部署上线的注意事项,帮助读者掌握全栈开发流程。
|
2月前
|
前端开发 JavaScript 中间件
基于最新koa的Node.js后端API架构与MVC模式
基于最新koa的Node.js后端API架构与MVC模式
50 1