easy-mock介紹


今天推薦一個好用的前端 mock 工具,Easy Mock,目前由大搜車無線架構團隊進行維護,讓我覺得特別好用的一點是 它支持 swagger(一個能稱為框架的 API 書寫工具),並能夠基於 Swagger 快速創建項目(酷),使用 easy-mock 你需要具備幾個相關工具或者知識,(mock.js語法,本地部署的話需要基本的node/npm/git操作,當然你可以完全不必要這么做,它的在線服務做的很好);下面是 easy-mock 的官方文檔介紹。

正文~~~

介紹

如果沒有內網部署的條件,推薦使用在線服務

Easy Mock 是一個可視化,並且能快速生成模擬數據的持久化服務。

特性

  • 支持接口代理
  • 支持快捷鍵操作
  • 支持協同編輯
  • 支持團隊項目
  • 支持 RESTful
  • 支持 Swagger | OpenAPI Specification (1.2 & 2.0 & 3.0)
  • 基於 Swagger 快速創建項目
  • 支持顯示接口入參與返回值
  • 支持顯示實體類
  • 支持靈活性與擴展性更高的響應式數據開發
  • 支持自定義響應配置(例:status/headers/cookies)
  • 支持 Mock.js 語法
  • 支持 restc 方式的接口預覽

鏈接

快速開始

在開始之前,假設你已經成功安裝了 Node.js(>= v8.9)& MongoDB(>= v3.4)& Redis(>= v4.0)。

安裝

$ git clone https://github.com/easy-mock/easy-mock.git
cd easy-mock && npm install

配置文件

找到 config/default.json,或者創建一個 config/local.json 文件,將如下需要替換的字段換成自己的配置即可。

不同環境會加載不同的配置文件,在此之前你應該對 node-config 有所了解。

{
  "port"7300,
  "host""0.0.0.0",
  "pageSize"30,
  "proxy"false,
  "db""mongodb://localhost/easy-mock",
  "unsplashClientId""",
  "redis": {
    "keyPrefix""[Easy Mock]",
    "port"6379,
    "host""localhost",
    "password""",
    "db"0
  },
  "blackList": {
    "projects": [], // projectId,例:"5a4495e16ef711102113e500"
    "ips": [] // ip,例:"127.0.0.1"
  },
  "rateLimit": { // https://github.com/koajs/ratelimit
    "max"1000,
    "duration"1000
  },
  "jwt": {
    "expire""14 days",
    "secret""shared-secret"
  },
  "upload": {
    "types": [".jpg"".jpeg"".png"".gif"".json"".yml"".yaml"],
    "size"5242880,
    "dir""../public/upload",
    "expire": {
      "types": [".json"".yml"".yaml"],
      "day"-1
    }
  },
  "ldap": {
    "server"""// 設置 server 代表啟用 LDAP 登錄。例:"ldap://localhost:389" 或 "ldaps://localhost:389"(使用 SSL)
    "bindDN"""// 用戶名,例:"cn=admin,dc=example,dc=com"
    "password""",
    "filter": {
      "base"""// 查詢用戶的路徑,例:"dc=example,dc=com"
      "attributeName""" // 查詢字段,例:"mail"
    }
  },
  "fe": {
    "copyright""",
    "storageNamespace""easy-mock_",
    "timeout"25000,
    "publicPath""/dist/"
  }
}

背景圖配置:

登錄頁的背景圖服務目前支持 UnsplashBing

如果 unsplashClientId 配置留空,默認由 Bing 提供服務。

注意:

  • publicPath 默認是 '/dist/'。如有需要,可以將其替換成自己的 CDN;
  • 關於 fe 的配置,一旦發生改變應該重新執行 build 命令。

啟動

$ npm run dev
# 訪問 http://127.0.0.1:7300

更多命令

# 前端靜態資源構建打包
$ npm run build

# 以生產環境方式啟動,需要提前執行 build
$ npm run start

# 單元測試
$ npm run test

# 語法檢測
$ npm run lint

服務器部署

在此之前請先配置好配置文件。

PM2

當在內網服務器部署時,推薦使用 PM2 來守護你的應用進程。

全局安裝 PM2

$ [sudo] npm install pm2 -g

用 PM2 啟動

在此之前,你應該已經完成了 build。

$ NODE_ENV=production pm2 start app.js

版本發布

Release 中記錄了每個版本的詳細更改。

貢獻

Easy Mock 目前由大搜車無線架構團隊進行維護。如有問題,歡迎提出 Issues,並通過 Pull Request 共同維護。不過在此之前,請務必閱讀這份貢獻指南


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM