0.3.3 • Published 7 years ago

chr-mock v0.3.3

Weekly downloads
3
License
MIT
Repository
github
Last release
7 years ago

chr-mock

A simple Koa based mock-server, provide the most basic REST service on watch a js/json file for myself.:no_mouth:
chr-mock David npm Travis Coveralls

Usage

$ npm i -g chr-mock
$ chr

  Usage: index [options] [command]


  Commands:

    watch [file]  Add a file to watch

  Options:

    -h, --help      output usage information
    -p, --port <n>  Add port to listen, default is 4000

# Default file path is ./test/data.test.json
$ chr watch
~/test/data.test.json is watched

Method for now

Just one level provided: /tablename/id, because of the lazy author.

TODOs

get

http://127.0.0.1:4000/tablename[/id/][?name=value]

http://127.0.0.1:4000/images
http://127.0.0.1:4000/images/1
http://127.0.0.1:4000/images?name=png
  • just has tablename
    The results of tablename's all datas.
  • tablename/id
    Nothing to say.
  • data filter
    When querys were followed with tablename, data would be filted by all key-value pair in querys.

Notice

  1. If query key is id, filter would be exact matching, others was fuzzy.
  2. These were keywords of query to reserve: page, limit, asc, desc. These would be used in the near future. maybe😝

post

POST http://127.0.0.1:4000/tablename
Content-Type: application/json

{ "id":"1","hehe":"123" }

###

POST http://127.0.0.1:4000/tablename?name=png
Content-Type: application/json

{ "id":"1","hehe":"123" }
  • without query: use the default keyword id to match data, if not even id, it would be added following by the last object in json file.
  • with query: query first, query > id!!!, if both query and body.id was setted, it would just match query. To solve this, follow query ?id=*.
  • query match is the same with get#Notice.
  • result is Object.assign(origin, new).

patch

one thing different with post, it could not add new element.

delete

DELETE http://127.0.0.1:4000/tablename
Content-Type: application/json

{ "name":"png","hehe":"123" }
  • delete without query params. filter is working on body, of course the same with get#Notice query.
  • result were all deleted elements.

Thank for

Teacher Ryan: ryan2-cli
Others in

LICENSE

MIT

0.3.3

7 years ago

0.3.2

7 years ago

0.3.1

7 years ago

0.3.0

7 years ago

0.2.5

7 years ago

0.2.4

7 years ago

0.2.3

7 years ago

0.2.2

7 years ago

0.2.1

7 years ago

0.2.0

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago