# imock

> restful mock server for front-end developer

Latest version **3.4.0** (published 2016-09-20) · ISC license · 0 weekly downloads

## Install

```sh
npm install imock
pnpm add imock
yarn add imock
bun add imock
```

Provides the command `imock`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 3.4.0 |
| Published | 2016-09-20 |
| First published | 2014-08-29 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 9 |
| Known vulnerabilities | 0 (+9 in 2 direct dependencies) |
| Install scripts | no |
| GitHub stars | 4 |
| Author | yunhua.xiao |
| Maintainers | kane |
| Keywords | mock, api |

## Links

- npm: https://www.npmjs.com/package/imock
- Repository: https://github.com/dmccer/imock
- Issues: https://github.com/dmccer/imock/issues
- npm.io page: https://npm.io/package/imock

## Dependencies (9)

- [ejs](https://npm.io/package/ejs.md) ^1.0.0
- [bytes](https://npm.io/package/bytes.md) ^1.0.0
- [morgan](https://npm.io/package/morgan.md) ^1.3.0
- [express](https://npm.io/package/express.md) ^3.16.8
- [getport](https://npm.io/package/getport.md) ^0.1.0
- [commander](https://npm.io/package/commander.md) ^2.3.0
- [http-proxy](https://npm.io/package/http-proxy.md) ^1.15.1
- [underscore](https://npm.io/package/underscore.md) ^1.7.0
- [body-parser](https://npm.io/package/body-parser.md) ^1.6.6

## Alternatives

- [pagerjs](https://npm.io/package/pagerjs.md) — 60 weekly downloads
- [whistle.savefor-mock](https://npm.io/package/whistle.savefor-mock.md) — 4 weekly downloads
- [@ireneliaoliao/vite-plugin-mock](https://npm.io/package/@ireneliaoliao/vite-plugin-mock.md) — 0 weekly downloads
- [fakenamely](https://npm.io/package/fakenamely.md) — 0 weekly downloads
- [@onify/fake-amqplib](https://npm.io/package/@onify/fake-amqplib.md) — 0 weekly downloads

## Recent versions

- 3.4.0 (latest) — 2016-09-20
- 3.3.1 — 2016-09-19
- 3.2.1 — 2015-03-31
- 3.2.0 — 2015-03-31
- 3.1.0 — 2014-11-27
- 3.0.5 — 2014-11-18
- 3.0.4 — 2014-09-05
- 3.0.3 — 2014-09-05
- 3.0.2 — 2014-09-05
- 3.0.1 — 2014-09-02
- 3.0.0 — 2014-09-02
- 2.0.3 — 2014-09-01
- 2.0.2 — 2014-09-01
- 2.0.1 — 2014-09-01
- 2.0.0 — 2014-09-01
- … 5 more at https://npm.io/package/imock/versions

## README

# imock
restful mock server for front-end developer

[![NPM](https://nodei.co/npm/imock.png)](https://nodei.co/npm/imock/)

[![Build Status](https://travis-ci.org/dmccer/imock.svg)](https://travis-ci.org/dmccer/imock)
[![Coverage Status](https://coveralls.io/repos/dmccer/imock/badge.png?branch=master)](https://coveralls.io/r/dmccer/imock?branch=master)

## Install

```bash
$ npm install imock -g
```

## Usage

```bash
$ imock -j json -b api
```

## Options

-j --json 可选，mock 文件目录，该目录下存放所有处理请求的 js

-b --base 可选，指定 mock 请求的 base path(若 base = api，则请求 mock 数据的地址为 http://localhost:{port}/api/{js-filename})

-p --port 可选，指定 mock server 端口号，默认 3000

-w --www 可选，指定静态服务器根目录(express.directory)，默认当前目录

-t --target 可选，若 mock 目录没有相应处理请求的 js，则会使用 target 指定的服务器来处理


注:

    1. www 与 base 可以是同层级或 www 是 base 的父目录，base 不能是 www 的父目录;
    2. 通常 base 为 /mock 或 /api;
    3. 前端 js 中请求地址为 http://localhost:3000/mock 或 http://localhost:3000/api


## mock 请求处理文件 example

filename: shop-id.js

```javascript
// request path: /mock/shop/1234
// request method: get
exports.get = function (req, res) {
    res.json(200, {
        code: 1,
        msg: {
            name: '小南国',
            shopId: 1234,
            level: 3
        }
    });
}

// request path: /mock/shop/1234
// request method: put
exports.put = function (req, res) {
    res.json(200, {
        code: 1,
        msg: '修改成功'
    });
}
```

filename: shop.js

```javascript
// request path: /mock/shop
// request method: post
exports.post = function (req, res) {
    res.json(200, {
        code: 1,
        msg: '保存成功'
    });
}
```

---
_Source: https://npm.io/package/imock · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
