溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

發(fā)布時間:2022-05-26 15:56:07 來源:億速云 閱讀:166 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“springboot vue測試平臺接口定義前后端新增功能如何實現(xiàn)”的相關(guān)知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“springboot vue測試平臺接口定義前后端新增功能如何實現(xiàn)”文章能幫助大家解決問題。

開發(fā)繼續(xù)更新

上節(jié)畫了大概的前端頁面,今天主要來實現(xiàn)后端接口,然后調(diào)通前后端實現(xiàn)接口新增功能。先預覽下效果:

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

一、后端部分

在 ApiDefinitionController 類中新增一個處理方法,處理接口的新增請求:

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

對應(yīng)的在 service 層實現(xiàn) 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);
  }

保存的實現(xiàn)不難,這里面加了幾個重要參數(shù)的為空判斷。

二、前端部分

在上節(jié)畫的頁面當中,還留有 rest參數(shù)和請求體這 2 個 tabs沒畫,先補全。

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

1. rest參數(shù)

這里主要是針對 restful 風格接口的請求,比如/bloomtest/project/list/1/10,這時候后面的1 和 10,就要在參數(shù)里設(shè)置變量去取了。

形式還是跟前面的 請求頭 和 query參數(shù)一樣的:

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

對應(yīng)的增加這個字段:

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

關(guān)于這里面的 key,是組件里需要的,我試過去掉,但是會有問題。暫時先留著,存進來目前不影響我后續(xù)的操作。

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

2. 請求體

這個請求體內(nèi)容,目前只考慮一般都情況,需要對其進行 json 格式化展示。我依然在 github 上找現(xiàn)成的組件,結(jié)果找到了一個vue-json-editor。

這個組件是支持編輯的,我上節(jié)里使用在返回展示的不可以編輯。

npm install vue-json-editor --save

安裝好之后,在vue文件中導入使用。

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

這個組件里同樣也是支持一些功能的,不過我只需要能格式化即可,作者代碼里有一段 demo。

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

在我的代碼里使用也很簡單,直接找到要放這個輸入框的地方,把代碼copy進去修改。

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

v-model 雙向綁定的字段:mode="'code'",則是默認顯示的模式,如下

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

功能雖然有了,但是樣式和顏色我不太喜歡,我試圖去修改源碼想調(diào)整下,但是不行,暫時先這樣,以后再說。

3. 請求參數(shù)

因為我整張頁面里分了好多個不同的 form 表單,所以我現(xiàn)在要有個地方處理一下,搜集這些表單的內(nèi)容,放在一個地方,用于最后的接口請求。

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

新增一個方法 handleSaveRequest ,給里面的字段賦值:

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

注意,在方法里有個判斷。就是在這 3 個 tabs 中,我點擊的哪一個,就會把其中添加的內(nèi)容賦值給this.saveApiRequest.request:

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

另外,還要注意的是,對于 apiHeader、request、response,還需要使用JSON.stringify()將其轉(zhuǎn)為 Json 字符串,方便后端保存。

4. 請求接口

首先還是要在 apiDefinition.js 新增這個接口:

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

接著就是導入:

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

最后實現(xiàn)新增接口的方法saveApi,當然了,在【保存】按鈕上的@click="saveApi"點擊事件不能少了。

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

在這個saveApi方法里,要做這么幾件事:

先調(diào)用方法handleSaveRequest,給請求參數(shù)賦值請求接口,并提示結(jié)果關(guān)閉新增的對話框刷新列表

springboot?vue測試平臺接口定義前后端新增功能如何實現(xiàn)

這樣接口的新增功能就實現(xiàn)了,不過這里模塊的地方暫時默認寫死了個0,保存的接口先存放在頂級節(jié)點下,后續(xù)這里還需要實現(xiàn)一個選擇樹,用來綁定具體模塊。

關(guān)于“springboot vue測試平臺接口定義前后端新增功能如何實現(xiàn)”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識,可以關(guān)注億速云行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI