Skip to content

NodeLab/qin

Repository files navigation

Q - I - N

Build Status

这是一个简单的开发环境,用于实现环境mock、接口代理等功能。

使用场景

  1. 搭建一个简单的 http 环境,例如flash的as脚本,页面内的静态资源
  2. 搭建一个 FTL 的模版渲染引擎,通过配置一些数据 ,更好的实现前后端分离
  3. 搭建一个接口 mock 支持 GET POST 的ajax请求 (通过配置config.json)
  4. 转发请求至开发环境,对于某些难以 mock 的请求(例如需要权限校验的场景)可以转发至开发环境

安装

npm i -g qin
## 推荐使用 cnpm 安装

使用方式

  • 在命令行、项目路径内,输入 qin
cd your/static/path/and/tempalte/project
qin
  
  • 根据提示,在浏览器内访问本机地址

  • 如果你需要继续使用一些高级配置,首先生成配置文件

qin -i 
## 生成配置文件
vim config.json
## 配置生成文件
qin
## 打开 qin

选项说明

-h, --help

列出可用参数,通过使用 qin -h 或者 qin --help 的方式调用

-V, --version

显示当前版本,和当前 package.json 中版本一致

-p, --port [int]

配置 http 服务的启动端口,默认会选用 8000 端口

-i, --init

生成配置文件,实现自定义的接口 mock、转发

-e, --easy

不使用自动刷新,提升性能

配置文件说明

修改 qin -i 生成的配置文件,可以实现自定义操作

apiPath (string)

通过配置这个字段,未 mock 的请求会转发到这个地址

htmlPath (string)

默认的模版路径,例如项目的结构为

.
└── app
    ├── html
    │   ├── index.ftl
    │   └── ttt.ftl

如果配置 htmlPath 为html,访问localhost:port/ttt.ftl,将返回渲染完毕的html/ttt.ftl

ajaxList (object)

内容为路由地址,和具体配置的映射关系

{
  "ajaxList": {
    "/test": {
      "type": "get",
      "code": "200",
      "msg": "hello world!"
    },
    "/post": {
      "type": "post",
      "body": {
        "groupId": "189"
      },
      "result": {
        "code": "200"
      },
      "reject": {
        "code": "500"
      }
    }
  }
}

路由地址

例如示例中的 /test, /post,配置之后将会代理localhost:port/testpost

type

例如示例中的 type 字段,选择代理路由的类型是 get 或是 post

body

如果配置了这个字段,只有当提交内容的字段和body设置的字段一致才返回 result 字段 否则返回reject

result

满足 body 条件,返回该字段内容

reject

不满足 body 条件,返回改字段内容

作者

ref

协议

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •