API統一管理平臺-YApi

      網友投稿 914 2025-04-01

      一 概述


      1.1 yapi

      YApi 是高效、易用、功能強大的 api 管理平臺,旨在為開發、產品、測試人員提供更優雅的接口管理服務。可以幫助開發者輕松創建、發布、維護 API,YApi 還為用戶提供了優秀的交互體驗,開發人員只需利用平臺提供的接口數據寫入工具以及簡單的點擊操作就可以實現接口的管理。API統一管理維護,多人協作,支持原有API一鍵導入和API文檔導出。可以將上一個API的請求參數或相應參數作為下一個API的請求參數,支持一鍵自動化測試,大大提升工作效率。

      1.2 流程圖

      1.3 特性

      基于 Json5 和 Mockjs 定義接口返回數據的結構和文檔,效率提升多倍

      扁平化權限設計,即保證了大型企業級項目的管理,又保證了易用性

      類似 postman 的接口調試

      自動化測試, 支持對 Response 斷言

      MockServer 除支持普通的隨機 mock 外,還增加了 Mock 期望功能,根據設置的請求過濾規則,返回期望數據

      支持 postman, har, swagger 數據導入

      免費開源,內網部署,信息再也不怕泄露了

      1.4 環境要求

      nodejs(7.6+)

      mongodb(2.6+)

      git

      二 部署

      2.1 node部署

      yum?-y?install?git?cd?/data/software?&&?wget?https://npm.taobao.org/mirrors/node/v10.16.2/node-v10.16.2-linux-x64.tar.xz?tar?-xf?node-v10.16.2-linux-x64.tar.xz??mv?node-v10.16.2-linux-x64?node?#?修改為root的權限?chown?root.root?node?-R?cat?>?/etc/profile.d/node.sh?<

      2.2 mongodb 安裝

      cat?>?/etc/yum.repos.d/mongodb.repo?<

      2.3 yapi部署

      使用我們提供的 yapi-cli 工具,部署 YApi 平臺是非常容易的。執行 yapi server 啟動可視化部署程序,輸入相應的配置和點擊開始部署,就能完成整個網站的部署。部署完成之后,可按照提示信息,執行 node/{網站路徑/server/app.js} 啟動服務器。在瀏覽器打開指定url, 點擊登錄輸入您剛才設置的管理員郵箱,默認密碼為 ymfe.org 登錄系統(默認密碼可在個人中心修改)。

      部署

      npm?install?-g?yapi-cli?--registry?https://registry.npm.taobao.org?yapi?server??復制代碼

      web界面部署

      由于是在云路由器下面,就沒設置mongod密碼

      依賴庫安裝完成,正在初始化數據庫mongodb...?>?yapi-vendor@1.8.1?install-server?/data/my-yapi/vendors?>?node?server/install.js?log:?mongodb?load?success...?初始化管理員賬號成功,賬號名:"xxxx@anchnet.com",密碼:"ymfe.org"?部署成功,請切換到部署目錄,輸入:?"node?vendors/server/app.js"?指令啟動服務器,?然后在瀏覽器打開?http://127.0.0.1:9009?訪問?復制代碼

      升級

      cd??{項目目錄}?yapi?ls?//查看版本號列表?yapi?update?//更新到最新版本?yapi?update?-v?{Version}?//更新到指定版本?復制代碼

      2.4 pm2守護進程

      npm?install?pm2?-g?[root@devops-yapi?my-yapi]#?pm2?start?"vendors/server/app.js"?--name?yapi?[PM2]?Starting?/data/my-yapi/vendors/server/app.js?in?fork_mode?(1?instance)?[PM2]?Done.?┌──────────┬────┬─────────┬──────┬───────┬────────┬─────────┬────────┬─────┬───────────┬──────┬──────────┐?│?App?name?│?id?│?version?│?mode?│?pid???│?status?│?restart?│?uptime?│?cpu?│?mem???????│?user?│?watching?│?├──────────┼────┼─────────┼──────┼───────┼────────┼─────────┼────────┼─────┼───────────┼──────┼──────────┤?│?yapi?????│?0??│?1.8.1???│?fork?│?32149?│?online?│?0???????│?0s?????│?0%??│?14.1?MB???│?root?│?disabled?│?└──────────┴────┴─────────┴──────┴───────┴────────┴─────────┴────────┴─────┴───────────┴──────┴──────────┘??Use?`pm2?show?`?to?get?more?details?about?an?app????[root@devops-yapi?my-yapi]#?pm2?info?yapi??Describing?process?with?id?0?-?name?yapi??┌───────────────────┬─────────────────────────────────────┐?│?status????????????│?online??????????????????????????????│?│?name??????????????│?yapi????????????????????????????????│?│?version???????????│?1.8.1???????????????????????????????│?│?restarts??????????│?0???????????????????????????????????│?│?uptime????????????│?24s?????????????????????????????????│?│?script?path???????│?/data/my-yapi/vendors/server/app.js?│?│?script?args???????│?N/A?????????????????????????????????│?│?error?log?path????│?/root/.pm2/logs/yapi-error.log??????│?│?out?log?path??????│?/root/.pm2/logs/yapi-out.log????????│?│?pid?path??????????│?/root/.pm2/pids/yapi-0.pid??????????│?│?interpreter???????│?node????????????????????????????????│?│?interpreter?args??│?N/A?????????????????????????????????│?│?script?id?????????│?0???????????????????????????????????│?│?exec?cwd??????????│?/data/my-yapi???????????????????????│?│?exec?mode?????????│?fork_mode???????????????????????????│?│?node.js?version???│?10.16.2?????????????????????????????│?│?node?env??????????│?N/A?????????????????????????????????│?│?watch?&?reload????│?????????????????????????????????????│?│?unstable?restarts?│?0???????????????????????????????????│?│?created?at????????│?2019-08-12T11:35:02.441Z????????????│?└───────────────────┴─────────────────────────────────────┘??Actions?available??┌────────────────────────┐?│?km:heapdump????????????│?│?km:cpu:profiling:start?│?│?km:cpu:profiling:stop??│?│?km:heap:sampling:start?│?│?km:heap:sampling:stop??│?└────────────────────────┘??Trigger?via:?pm2?trigger?yapi???Code?metrics?value??┌────────────────────────┬───────────┐?│?Heap?Size??????????????│?36.80?MiB?│?│?Heap?Usage?????????????│?81.39?%???│?│?Used?Heap?Size?????????│?29.95?MiB?│?│?Active?requests????????│?0?????????│?│?Active?handles?????????│?10????????│?│?Event?Loop?Latency?????│?0.51?ms???│?│?Event?Loop?Latency?p95?│?49.22?ms??│?└────────────────────────┴───────────┘??Divergent?env?variables?from?local?env???Add?your?own?code?metrics:?http://bit.ly/code-metrics??Use?`pm2?logs?yapi?[--lines?1000]`?to?display?logs??Use?`pm2?env?0`?to?display?environement?variables??Use?`pm2?monit`?to?monitor?CPU?and?Memory?usage?yapi?復制代碼

      三 使用

      3.1 項目/分組創建

      API統一管理平臺-YApi

      首先創建項目,一個項目內可以創建多個分組,將成員加入進來

      3.2 數據導入導出

      支持postman集合導入及swagger數據同步

      3.3 環境配置

      可以將公共的參數,或者域名創建多個環境,參數化方式方便切換

      3.4 接口使用

      發送請求需要安裝插件

      發送GET請求

      查看響應

      發送POST請求

      3.5 自動化測試

      將接口測試完成后可以保存為測試集合,進行自動化測試

      可以通過將第一個接口的params,或response中的body作為第二個接口的params實現自動化測試

      測試中可以寫斷言

      可以看每個接口的測試報告

      服務端測試,是放在服務器上運行請求

      測試完成輸出報告

      3.6 接口mock

      四 反思

      個人覺得工具還是很好的工具,以下僅為個人在工作中使用對工具的評價,僅供參考。

      4.1 優點

      該工具簡單方便,扁平的權限管理項目/分組方便快捷多人協作接口測試,減少前后端接口對接成本,打破前端以依賴后端接口的束縛

      自動化測試及將參數mock配合備注/wiki,導出接口文檔,統一文檔格式,無需額外維護接口

      接口變更,通過測試更新接口文檔,統一平臺管理無需維護更新多個文檔

      web方式部署方便快捷

      4.2 缺點

      無法對接口請求進行response記錄,如果能記錄下接口的響應會更方便查看

      對于有回調的接口,如果考慮在服務端配置回調適應場景會更廣

      五 參考鏈接

      yapi官網

      使用 YApi 管理 API 文檔,測試, mock

      自動更新 Swagger 接口數據到 YApi 平臺

      自動化測試

      API

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:excel表格復選框如何打鉤
      下一篇:WPS表格如何添加批注(wps表格怎么批量添加批注)
      相關文章
      亚洲精华液一二三产区| 在线视频亚洲一区| 国产成人亚洲精品91专区手机| 亚洲精品日韩一区二区小说| 亚洲综合色7777情网站777| 中文字幕亚洲综合久久2| 久久精品国产亚洲77777| 亚洲乱码中文字幕综合| 亚洲中文字幕成人在线| 亚洲男女内射在线播放| 亚洲日本在线观看视频| 久久久久久A亚洲欧洲AV冫| 国产亚洲色婷婷久久99精品91| 亚洲毛片网址在线观看中文字幕 | 久久久久国产成人精品亚洲午夜| 亚洲色一色噜一噜噜噜| 久久精品国产亚洲精品| 亚洲国产综合无码一区| 亚洲深深色噜噜狠狠网站| 亚洲日日做天天做日日谢| 国产AV旡码专区亚洲AV苍井空| 亚洲中文字幕无码久久2020| 亚洲日韩看片无码电影| 亚洲aⅴ无码专区在线观看| 亚洲AV无码精品国产成人| 一区二区三区亚洲视频| 国产午夜亚洲不卡| 亚洲精品色午夜无码专区日韩| 婷婷亚洲久悠悠色悠在线播放| 91嫩草私人成人亚洲影院| 亚洲av无码一区二区三区天堂古代| 亚洲精品熟女国产| 2022年亚洲午夜一区二区福利| 久久久久亚洲AV成人片| 亚洲人成高清在线播放| 亚洲av无码专区在线观看下载| 亚洲国产精品自在拍在线播放| 亚洲性猛交XXXX| 久久亚洲美女精品国产精品| 亚洲AV综合色区无码二区爱AV| 亚洲精品无码成人|