『博客开发日记-后台』之优化一些接口的检测判断

本文最后更新于 2026年5月6日 晚上

优化一些接口的检测判断


前言

为了确保安全且保持不能永远相信前端传的数据

在后端的很多接口都要检测一些数据是否为空

如一些 获取表单接口,删除接口,修改接口还要评论相关的审核跟回复接口

虽然这些在使用过程中不会有明显的感觉

但是在调用接口时传了不存在的数据却没有对这些数据进行检测 这样是不对的


代码实现

AdminCategoryServiceImpl 相关方法

getCategoryFormDetail 方法


updateCategory 方法


deleteCategory 方法


1
2
3
4
5
6
7
8
9
10
11
12
13
14
//检查分类是否存在
List<Category> categoriesToDelete = categoryService.listByIds(idList);
if (categoriesToDelete.size() != ids.length) {
//找出不存在的 分类id
Set<Long> existIds = categoriesToDelete.stream()
.map(Category::getId)
.collect(Collectors.toSet());

List<Long> notExistIds = idList.stream()
.filter(id -> !existIds.contains(id))
.toList();

return ResponseResult.errorResult(AppHttpCodeEnum.SYSTEM_ERROR, "删除失败!!原因:以下分类 id 不存在:" + notExistIds);
}

其他的文章,友链和标签都大差不差,这里就不展示了

主要说一下评论相关的

回复评论和审核评论

回复评论


审核评论(通过审核和不通过审核这两部分代码差不多的)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
//查询需要审核的评论
List<Comment> commentsToApprove = commentService.listByIds(idList);
if (commentsToApprove.size() != ids.length) {
//找出不存在的 评论id
Set<Long> existIds = commentsToApprove.stream()
.map(Comment::getId)
.collect(Collectors.toSet());

List<Long> notExistIds = idList.stream()
.filter(id -> !existIds.contains(id))
.toList();

return ResponseResult.errorResult(AppHttpCodeEnum.SYSTEM_ERROR, "审核失败!!原因:以下评论 id 不存在:" + notExistIds);
}

删除评论也和上面差不多,这里不展示了


总结一下

其实做这些在实际使用中不会遇到

这是为了做给后端测试用的

因为测试测试接口时不可能时刻知道这些参数是否真实存在

做检查也是有备无患



PS:该系列只做为作者学习开发项目做的笔记用

不一定符合读者来学习,仅供参考


预告

后续会记录博客的开发过程

每次学习会做一份笔记来进行发表

“一花一世界,一叶一菩提”


版权所有 © 2026 云梦泽
欢迎访问我的个人网站:https://hgt12.github.io/


『博客开发日记-后台』之优化一些接口的检测判断
http://example.com/2026/05/05/『博客开发日记-后台』之优化一些接口的检测判断/
作者
云梦泽
发布于
2026年5月5日
更新于
2026年5月6日
许可协议