0

0

springboot vue测试平台接口定义前后端新增功能如何实现

WBOY

WBOY

发布时间:2023-05-15 15:01:14

|

1554人浏览过

|

来源于亿速云

转载

开发继续更新

上节画了大概的前端页面,今天主要来实现后端接口,然后调通前后端实现接口新增功能。先预览下效果:

springboot vue测试平台接口定义前后端新增功能如何实现

一、后端部分

在 ApiDefinitionController 类中新增一个处理方法,处理接口的新增请求:

@PostMapping("/add")
  public Result add(@RequestBody ApiDefinition request) {
      try {
          apiDefinitionService.add(request);
          return Result.success();
      } catch (Exception e) {
          return Result.fail(e.toString());
      }
  }

对应的在 service 层实现 add 方法:

public void add(ApiDefinition request) {
      if (StringUtils.isEmpty(request.getProjectId().toString())) {
          BtException.throwException("项目id为空");
      }
      if (StringUtils.isEmpty(request.getModuleId().toString())) {
          BtException.throwException("模块id为空");
      }
      if (StringUtils.isEmpty(request.getName())) {
          BtException.throwException("接口名称为空");
      }
      request.setCreateTime(new Date());
      request.setUpdateTime(new Date());
      apiDefinitionDAO.insert(request);
  }

保存的实现不难,这里面加了几个重要参数的为空判断。

立即学习前端免费学习笔记(深入)”;

二、前端部分

在上节画的页面当中,还留有 rest参数和请求体这 2 个 tabs没画,先补全。

springboot vue测试平台接口定义前后端新增功能如何实现

1. rest参数

这里主要是针对 restful 风格接口的请求,比如/bloomtest/project/list/1/10,这时候后面的1 和 10,就要在参数里设置变量去取了。

形式还是跟前面的 请求头 和 query参数一样的:

springboot vue测试平台接口定义前后端新增功能如何实现

对应的增加这个字段:

springboot vue测试平台接口定义前后端新增功能如何实现

关于这里面的 key,是组件里需要的,我试过去掉,但是会有问题。暂时先留着,存进来目前不影响我后续的操作。

springboot vue测试平台接口定义前后端新增功能如何实现

2. 请求体

这个请求体内容,目前只考虑一般都情况,需要对其进行 json 格式化展示。我依然在 github 上找现成的组件,结果找到了一个vue-json-editor

这个组件是支持编辑的,我上节里使用在返回展示的不可以编辑。

npm install vue-json-editor --save

安装好之后,在vue文件中导入使用。

springboot vue测试平台接口定义前后端新增功能如何实现

这个组件里同样也是支持一些功能的,不过我只需要能格式化即可,作者代码里有一段 demo。

springboot vue测试平台接口定义前后端新增功能如何实现

在我的代码里使用也很简单,直接找到要放这个输入框的地方,把代码copy进去修改。

springboot vue测试平台接口定义前后端新增功能如何实现

GemDesign
GemDesign

AI高保真原型设计工具

下载

v-model 双向绑定的字段:mode="'code'",则是默认显示的模式,如下

springboot vue测试平台接口定义前后端新增功能如何实现

功能虽然有了,但是样式和颜色我不太喜欢,我试图去修改源码想调整下,但是不行,暂时先这样,以后再说。

3. 请求参数

因为我整张页面里分了好多个不同的 form 表单,所以我现在要有个地方处理一下,搜集这些表单的内容,放在一个地方,用于最后的接口请求。

springboot vue测试平台接口定义前后端新增功能如何实现

新增一个方法 handleSaveRequest ,给里面的字段赋值:

springboot vue测试平台接口定义前后端新增功能如何实现

注意,在方法里有个判断。就是在这 3 个 tabs 中,我点击的哪一个,就会把其中添加的内容赋值给this.saveApiRequest.request:

springboot vue测试平台接口定义前后端新增功能如何实现

另外,还要注意的是,对于 apiHeader、request、response,还需要使用JSON.stringify()将其转为 Json 字符串,方便后端保存。

4. 请求接口

首先还是要在 apiDefinition.js 新增这个接口:

springboot vue测试平台接口定义前后端新增功能如何实现

接着就是导入:

springboot vue测试平台接口定义前后端新增功能如何实现

最后实现新增接口的方法saveApi,当然了,在【保存】按钮上的@click="saveApi"点击事件不能少了。

springboot vue测试平台接口定义前后端新增功能如何实现

在这个saveApi方法里,要做这么几件事:

先调用方法handleSaveRequest,给请求参数赋值请求接口,并提示结果关闭新增的对话框刷新列表

springboot vue测试平台接口定义前后端新增功能如何实现

这样接口的新增功能就实现了,不过这里模块的地方暂时默认写死了个0,保存的接口先存放在顶级节点下,后续这里还需要实现一个选择树,用来绑定具体模块。

相关专题

更多
c++ 根号
c++ 根号

本专题整合了c++根号相关教程,阅读专题下面的文章了解更多详细内容。

57

2026.01.23

c++空格相关教程合集
c++空格相关教程合集

本专题整合了c++空格相关教程,阅读专题下面的文章了解更多详细内容。

57

2026.01.23

yy漫画官方登录入口地址合集
yy漫画官方登录入口地址合集

本专题整合了yy漫画入口相关合集,阅读专题下面的文章了解更多详细内容。

237

2026.01.23

漫蛙最新入口地址汇总2026
漫蛙最新入口地址汇总2026

本专题整合了漫蛙最新入口地址大全,阅读专题下面的文章了解更多详细内容。

393

2026.01.23

C++ 高级模板编程与元编程
C++ 高级模板编程与元编程

本专题深入讲解 C++ 中的高级模板编程与元编程技术,涵盖模板特化、SFINAE、模板递归、类型萃取、编译时常量与计算、C++17 的折叠表达式与变长模板参数等。通过多个实际示例,帮助开发者掌握 如何利用 C++ 模板机制编写高效、可扩展的通用代码,并提升代码的灵活性与性能。

17

2026.01.23

php远程文件教程合集
php远程文件教程合集

本专题整合了php远程文件相关教程,阅读专题下面的文章了解更多详细内容。

103

2026.01.22

PHP后端开发相关内容汇总
PHP后端开发相关内容汇总

本专题整合了PHP后端开发相关内容,阅读专题下面的文章了解更多详细内容。

73

2026.01.22

php会话教程合集
php会话教程合集

本专题整合了php会话教程相关合集,阅读专题下面的文章了解更多详细内容。

81

2026.01.22

宝塔PHP8.4相关教程汇总
宝塔PHP8.4相关教程汇总

本专题整合了宝塔PHP8.4相关教程,阅读专题下面的文章了解更多详细内容。

70

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Vue 教程
Vue 教程

共42课时 | 7.2万人学习

Vue3.x 工具篇--十天技能课堂
Vue3.x 工具篇--十天技能课堂

共26课时 | 1.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号