yapi 事件创建、修改等接口事件监听
生活随笔
收集整理的這篇文章主要介紹了
yapi 事件创建、修改等接口事件监听
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用的yapi作為接口文檔平臺。出于業務需求需要對接口創建、修改、刪除等事件進行監聽。
yapi已經實現并預留了這個口子,但是沒有找到實現的文檔。這里進行簡單描述下使用的方式。
一、yapi創建、修改接口事件
根據yapi目前的開放實現機制,在plugin.js這個文件中提供了一些事件其中就有創建、修改接口的事件。
在創建接口時,會將接口的詳細信息作為參數;當接口編輯更新時,會將編輯的接口的接口ID作為參數。詳細說明如下:
1.1 yapi 創建接口事件
/*** 客戶端增加接口成功后觸發* @param data 接口的詳細信息*/interface_add: {type: 'multi',listener: []},1.2 yapi更新接口事件
/*** 客戶端更新接口成功后觸發* @param id 接口id*/interface_update: {type: 'multi',listener: []},二、提供接口事件的回調接口
這里使用Springboot提供實現了兩個接口,分別是接口創建、接口編輯更新接口。根據自身業務需求當有接口創建、接口更新時進行實現邏輯即可。
public interface YApiCallbackFacade {/*** 創建接口** @param data 創建接口參數信息*/@PostMapping("/api/yapi-callback/v1/interface/create")ResultBean<CreateInterfaceVo> createInterface(@RequestParam("data") data);/*** yapi更新** @param apiId 更新接口的ID*/@GetMapping("/api/yapi-callback/v1/interface/update")ResultBean<Boolean> updateInterface(@RequestParam("id") String apiId);}三、yapi調用回調接口
在觸發事件中實現調用回調接口的邏輯。
var hooks = {/*** 客戶端增加接口成功后觸發* @param data 接口的詳細信息*/interface_add: {type: 'multi',listener: [createInterface]},/*** 客戶端更新接口成功后觸發* @param id 接口id*/interface_update: {type: 'multi',listener: [updateInterface]} };在兩個事件的listener中配置實現的方法。詳細方法如下:
/*** 創建接口* @param data*/ function createInterface(data) {console.log(data);axios.post('https://127.0.0.1/api/yapi-callback/v1/interface/create', {'data': JSON.stringify(data)}).then(response => {console.log(response.data)}); }/*** 更新接口* @param data*/ function updateInterface(data){axios.get('https://127.0.0.1/api/yapi-callback/v1/interface/update?id='+data).then(response=>{console.log(response.data)}); }創建接口時data的部分格式如下
{ edit_uid: 0,status: 'undone',type: 'static',req_body_is_json_schema: false,res_body_is_json_schema: false,api_opened: false,index: 0,tag: [],method: 'GET',catid: 66,title: '人員信息-test',path: '/api/person/info',project_id: 48,req_params: [],res_body_type: 'json',query_path: { path: '/api/person/info', params: [] },uid: 12,add_time: 1632543497,up_time: 1632543497,req_query: [],req_headers: [],req_body_form: [],_id: 5074,__v: 0 }這里是接口創建時data的格式。
知行合一
總結
以上是生活随笔為你收集整理的yapi 事件创建、修改等接口事件监听的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 搞不定 NodeJS 内存泄漏?先从了解
- 下一篇: 这个 MySQL bug 让我大开眼界