• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

sanyueyu/gulp-mock-server: to be the most simple gulp mock tool in the world

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

sanyueyu/gulp-mock-server

开源软件地址(OpenSource Url):

https://github.com/sanyueyu/gulp-mock-server

开源编程语言(OpenSource Language):

JavaScript 98.6%

开源软件介绍(OpenSource Introduction):

gulp-mock-server


A gulp tool also a commandline tool for local mock data,everything for simple!

feature

json files in data directory(default named data) generate interface automatically

_ => means real request _

'host + /test' => response file 'data/test.json'

'host + /test.do' => response file 'data/test.do.json'

change mock directory, default named 'data' directory in your project

 ...
 mockDir: './demo/data'
 ...

generate jsonp interface automatically

'host + /test.jsonp?callback=cb' => response file 'data/test.jsonp.json'

support https

 ...
 https: true
 ...

multi-level directory such as:

'host + /class/xiaoming' => response file 'data/class/xiaoming.json'

different params different response by get or post request

/data/check.do.js content:

module.exports = {
  params: {id: 123},
  response: './check_one.json'
}

or

module.exports = [{
  params: {id: 123},
  response: './check_one.json'
}, {
  params: {id: 456},
  response: './check_two.json'
}, {
  params: {id: 789},
  response: {
    name: "three"
  }
}]

'host + /check.do' => response file 'data/check.do.js'

'host + /check.do?id=123' => response file 'data/check_one.json'

'host + /check.do?id=789' => response content '{"name":"three"}'

configs:

Key Type Default Description
params Object Null The parameters of the meet
delay Number 0 Request delay time
route String Null Request url
code Number 200 Status code (Temporary does not support)
response Object {} The data returned

support powerful command line

Options:

  • -h, --help output usage information
  • -v, --version output the version number
  • -e, --server [mockRoot] start mock server, such as: mock -e
  • -p, --port [port] server port config, such as: mock -e -p 8000
  • -f, --fetch [url] download remote url to local json file, such as: mock -f http://hostname/api/test.do

may be others...

Install

use for gulp

$ npm install --save-dev gulp-mock-server

use for commandline

$ npm install -g gulp-mock-server

Usage

first step

make a directory named "data" in the root directory

second step

webserver config:

var gulp = require('gulp');
var mockServer = require('gulp-mock-server');

gulp.task('mock', function() {
  gulp.src('.')
    .pipe(mockServer({
      port: 8090
    }));
});

put a json file such as "test.json" in the "/data" directory

third step

visit url => localhost:8090/test

so easy!

Options

Key Type Default Description
host String localhost hostname of the webserver
port Number 8000 port of the webserver
path String / path to the webserver
mockDir String ./data mock directory
livereload Boolean/Object false whether to use livereload. For advanced options, provide an object. You can use the 'port' property to set a custom live reload port and the filter function to filter out files to watch. The object also needs to set enable property to true (e.g. enable: true) in order to activate the livereload mode. It is off by default.
directoryListing Boolean/Object false whether to display a directory listing. For advanced options, provide an object with the 'enable' property set to true. You can use the 'path' property to set a custom path or the 'options' property to set custom serve-index options.
fallback String undefined file to fall back to (relative to webserver root)
open Boolean/String false open the localhost server in the browser. By providing a String you can specify the path to open (for complete path, use the complete url http://my-server:8080/public/) .
https Boolean/Object false whether to use https or not. By default, gulp-webserver provides you with a development certificate but you remain free to specify a path for your key and certificate by providing an object like this one: {key: 'path/to/key.pem', cert: 'path/to/cert.pem'}.
proxies Array [] a list of proxy objects. Each proxy object can be specified by {source: '/abc', target: 'http://localhost:8080/abc', options: {headers: {'ABC_HEADER': 'abc'}}}.
allowCrossOrigin Boolean false whether to allow cross origin calls (CORS)

contributors

sanyueyu,dstj,elwayman02, walkcc




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
bitbull-team/magento2-gulpfile: Simple Gulpfile for Magento2发布时间:2022-06-21
下一篇:
sindresorhus/gulp-chmod: Change permissions of Vinyl files发布时间:2022-06-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap