fly63前端网

www.fly63.com

首页文章资源工具教程 栏目
  • 关于我们
  • 网站投稿
  • 赞助一下
搜索

在线工具_工作生活好帮手

打造各种简单、易用、便捷的在线工具,网友无需注册和下载安装即可使用

点击查看

关闭

提交网站

mocker-api
分享
复制链接
新浪微博
QQ 好友

扫一扫分享

网站地址:https://npm.im/mocker-api
GitHub:https://github.com/jaywcjlove/mocker-api
网站描述:为 REST API 创建模拟 API

mocker-api 为 REST API 创建模拟 API。 当您尝试在没有实际 REST API 服务器的情况下测试应用程序时,它会很有用。


mocker-api特征:

内置支持热Mocker文件替换。
通过JSON快速轻松地配置API。
模拟API代理变得简单。
可以独立使用,无需依赖webpack和webpack-dev-server。


快速开始

mkdir mocker-app && cd mocker-app

# Create a mocker configuration file based on rules
touch api.js

# Global install dependent.
npm install mocker-api -g
# Run server
mocker ./api.js


安装

你可以将 package.json 配置作为当前项目依赖项。

npm install mocker-api --save-dev


使用

 mocker-api 在开发模式支持模拟数据, 将入口文件放入 mocker/index.js. 您可以通过添加 httpProxy 配置来修改 http-proxy 选项并添加事件侦听器

const proxy = {
  // Priority processing.
  // apiMocker(app, path, option)
  // This is the option parameter setting for apiMocker
  _proxy: {
    proxy: {
      '/repos/(.*)': 'https://api.github.com/',
      '/:owner/:repo/raw/:ref/(.*)': 'http://127.0.0.1:2018'
    },
    changeHost: true,
    // modify the http-proxy options
    httpProxy: {
      options: {
        ignorePath: true,
      },
      listeners: {
        proxyReq: function (proxyReq, req, res, options) {
          console.log('proxyReq');
        },
      },
    },    
  },
  // =====================
  'GET /api/user': {
    id: 1,
    username: 'kenny',
    sex: 6
  },
  'GET /api/user/list': [
    {
      id: 1,
      username: 'kenny',
      sex: 6
    }, {
      id: 2,
      username: 'kenny',
      sex: 6
    }
  ],
  'GET /api/:owner/:repo/raw/:ref/(.*)': (req, res) => {
    const { owner, repo, ref } = req.params;
    // http://localhost:8081/api/admin/webpack-mock-api/raw/master/add/ddd.md
    // owner => admin
    // repo => webpack-mock-api
    // ref => master
    // req.params[0] => add/ddd.md
    return res.json({
      id: 1,
      owner, repo, ref,
      path: req.params[0]
    });
  },
  'POST /api/login/account': (req, res) => {
    const { password, username } = req.body;
    if (password === '888888' && username === 'admin') {
      return res.json({
        status: 'ok',
        code: 0,
        token: "sdfsdfsdfdsf",
        data: {
          id: 1,
          username: 'kenny',
          sex: 6
        }
      });
    } else {
      return res.status(403).json({
        status: 'error',
        code: 403
      });
    }
  },
  'DELETE /api/user/:id': (req, res) => {
    console.log('---->', req.body)
    console.log('---->', req.params.id)
    res.send({ status: 'ok', message: '删除成功!' });
  }
}
module.exports = proxy;

链接: https://fly63.com/nav/2320

more>>
相关栏目
Jest
Facebook开发的一个对javascript进行单元测试的工具
官网GitHub
puppeteer
web前端自动化测试利器
官网GitHub
FrontJS
轻量级的网站错误监控平台
官网
Gremlins.js
模拟用户随机操作的 JS 测试库
点击进入GitHub
JSDebugger
基于 JavaScript 的调试程序
官网GitHub
PhantomCSS
像素对比工具
点击进入GitHub
DejaVue
Vue.js的可视化Chrome开发工具
官网GitHub
avoriaz
一个Vue.js测试工具类库
官网GitHub
qunit
一个强大的JavaScript单元测试框架
官网GitHub
Expect.js
写一些简单测试用例、仿自然语言的方法
官网GitHub
should.js
一款js测试断言库
官网GitHub
supertest
nodejs开发单元测试
点击进入GitHub
Fundebug
一行代码搞定BUG监控!
官网
jasmine
一款 JavaScript 测试框架,它不依赖于其他任何 JavaScript 组件
官网GitHub
RegExr
一个基于HTML/JS的工具,用于创建,测试和学习正则表达式
官网GitHub
strider
一个开源的持续部署/持续集成平台
官网GitHub

手机预览