91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

基于Koa2寫個腳手架模擬接口服務的方法

發布時間:2020-09-03 10:55:29 來源:腳本之家 閱讀:163 作者:FlyingWWS 欄目:web開發

ap-cli 前端模擬接口服務腳手架

項目地址

依據接口定義,幫助你快速的完成接口模擬工作。

主要功能:

  • [x] 通過json、js、swagger文件模擬接口數據
  • [x] 通過正則匹配指定需要mock的文件
  • [x] 生成簡單markdown接口文檔

開始

下載ap-cli

$ npm install ap-cli -g

創建data.json

[
 {
  "url": "/api/get/index",
  "method": "get",
  "response": {
   "name": "pc",
   "status": "success"
  }
 }
]

運行

$ ap-cli -m data.json

現在打開 http://localhost:3000/api/get/index ,你會得到

{ "name": "pc", "status": "success" }

同時會在當前文件目錄生成一個簡單的markdown接口文檔

使用

1、通過js方式模擬數據

格式查看

data.js

const getUserList = () => {
 const data = {
  "summary": "獲取用戶列表(get方式)",
  "url": "/api/get/userList",
  "method": "get",
  "parameters": "",
  "response": {
   "count": 100,
   "userList": []
  }
 }
 for (let i = 0; i < 100; i++) {
  data.response.userList.push({ id: i, name: `user${i}` })
 }
 return data
};

module.exports = {
 getUserList
};

運行

$ ap-cli -m data.js

查看接口

http://localhost:3000/api/get/userList

2、通過swagger文件模擬數據

這種方式主要是通過swagger生成一個xx_new.json文件,然后進行模擬數據

# 運行會生成一個swagger_new.json文件
$ ap-cli -s swagger.json
# 模擬數據
$ ap-cli -m swagger_new.json

通過正則匹配指定要模擬的文件

當前目錄下有3個文件a1.json、a2.js、b1.js,你可以通過正則只模擬a1.json和a2.js文件的數據。

$ ap-cli -m all -r /^a/

CLI用法

# 縮寫 完整 默認 說明
1 -m --mock [fileName] 'all' 模擬接口服務,[fileName]當前目錄下要mock的文件名,[all]默認當前目錄下的所有文件
2 -r --regexp [regexp] 通過正則匹配需要mock的文件
3 -s --swagger [fileName] 通過swagger生成json模板文件,[fileName]當前目錄下的swagger文件名
4 -p --port [port] 3000 指定mock的端口

完整模板及說明

不管是json、js、swagger文件,最終都是轉換成下面的格式進行處理。

示例

[
 {
  "summary": "獲取用戶信息接口json",
  "url": "/api/get/userinfo",
  "method": "post",
  "parameters": {
   "parsing": true,
   "child": [
    {
     "key": "userid",
     "type": "string",
     "required": true,
     "description": "user id"
    }
   ]
  },
  "response": {
   "body": {
    "id": "0001",
    "status": "success",
    "userinfo": {
     "name": "pc",
     "age": 18,
     "gender": "boy"
    }
   }
  }
 }
]

主要屬性說明

# 字段 類型 說明 默認 是否必須 備注
1 summary string 接口概述 xxx接口
2 url string 接口地址 /api
3 method string http請求方式 get
4 parameters / 接口請求參數 可顯示為表格(詳見下1-1.parameters屬性說明)
5 response / 接口響應數據

1-1. parameters屬性說明

# 字段 類型 說明 默認 是否必須 備注
1 parsing boolean 是否解析 false
2 child object [] 子節點 子節點屬性(詳見1-1-1.child屬性說明)

1-1-1. child屬性說明

# 字段 類型 說明 默認 是否必須
1 key string 字段名稱 -
2 type string 字段類型 string
3 description string 字段說明
4 required boolean 是否必須 false
5 child object [] 子節點數據

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

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

AI

洞头县| 綦江县| 株洲市| 弥勒县| 九龙城区| 泗阳县| 顺平县| 青海省| 永登县| 合山市| 南阳市| 永仁县| 泉州市| 卓资县| 运城市| 德惠市| 乌鲁木齐市| 丰都县| 彭阳县| 宣恩县| 潼南县| 杨浦区| 汪清县| 莱芜市| 津市市| 咸丰县| 丰城市| 浦县| 定兴县| 临高县| 分宜县| 洪湖市| 宜良县| 岚皋县| 蒙山县| 本溪市| 铜陵市| 丘北县| 钟山县| 循化| 东宁县|