easy-mock介绍

今天推荐一个好用的前端 mock 工具,Easy Mock,目前由大搜车无线架构团队进行维护,让我以为特别好用的一点是 它支持 swagger(一个能称为框架的 API 书写工具),并可以基于 Swagger 快速建立项目(酷),使用 easy-mock 你须要具有几个相关工具或者知识,(mock.js语法,本地部署的话须要基本的node/npm/git操做,固然你能够彻底没必要要这么作,它的在线服务作的很好);下面是 easy-mock 的官方文档介绍。javascript

正文~~~

介绍

若是没有内网部署的条件,推荐使用在线服务前端

Easy Mock 是一个可视化,而且能快速生成模拟数据的持久化服务。java

特性

  • 支持接口代理
  • 支持快捷键操做
  • 支持协同编辑
  • 支持团队项目
  • 支持 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)。node

安装

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

配置文件

找到 config/default.json,或者建立一个 config/local.json 文件,将以下须要替换的字段换成本身的配置便可。git

不一样环境会加载不一样的配置文件,在此以前你应该对 node-config 有所了解。github

{
  "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/"
  }
}

背景图配置:redis

登陆页的背景图服务目前支持 UnsplashBingmongodb

若是 unsplashClientId 配置留空,默认由 Bing 提供服务。npm

注意:json

  • 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 共同维护。不过在此以前,请务必阅读这份贡献指南

相关文章
相关标签/搜索