simple-mock-api

项目中有一个Activiy需要轮询多个接口,实时刷新数据。这里很多业务逻辑都需要依赖当前的状态,所以简单写了一个服务端,用于生成一些mock data,并且支持数据实时刷新。

项目地址:simple-mock-api

挂到腾讯云上就可以公网访问了。


simple-mock-api

Use json-server make this simple mock api server.

Usage

  1. checkout this project,and cd
  2. type npm install in terminal to install dependences
  3. run node app.js
  4. get result via your configed cgi,like http://localhost:3000/get_match_players

Config

You can config

cgi,
default json file,
custom handle the request, modify json response

Example

Create a get_match_detail.json file in data folder.

{
  "state": 1,
  "title":"NBA",
  "time":"2017-01-01",
  "homescore": "101",
  "guestscore": "115"
}

In config.js config you mock api

var config = [
{
    "cgi":"/get_match_detail",
    "filepath":"data/get_match_detail.json",
    "need_cache":true,
    "hookfunc":func_get_match_detail
},
{
    "cgi":"/get_match_players",
    "filepath":"data/get_match_players.json",
    "need_cache":false,
    "hookfunc":func_get_match_players
},

];

You can custom handle the request by define your custom “hookfunc”, like this:

var func_get_match_detail = function(defaultObj,req) {
    //increase homescore every time
    var homescore = parseInt(defaultObj.homescore)+1+"";
    defaultObj.homescore = homescore;
}

The param defaultObj means the parsed json object you defined in the key “filepath”.

If the key “need_cache” seted true, than your hookfunc can change the defaultObj in the cache forever.

Start JSON Server

$ node app.js

Now if you go to http://localhost:3000/get_match_detail, you’ll get

{
  "state": 1,
  "title":"NBA",
  "time":"2017-01-01",
  "homescore": "102",
  "guestscore": "115"
}

and the homescore’s value changed every time when you go to the same link.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏散尽浮华

Centos7下GlusterFS分布式存储集群环境部署记录

之前已经简单地对GlusterFS分布式文件系统做了介绍,下面就该环境部署做一记录: 0)环境准备 GlusterFS至少需要两台服务器搭建,服务器配置最好相同...

4926
来自专栏运维小白

2.15 更改所有者和所属组chown

chown命令 chown介绍和例子 chown等于change owner 更改文件的所有者和所属组 [root@hf-01 ~]# ls...

1837
来自专栏菩提树下的杨过

rpc框架之 thrift 学习 1 - 安装 及 hello world

thrift是一个facebook开源的高效RPC框架,其主要特点是跨语言及二进制高效传输(当然,除了二进制,也支持json等常用序列化机制),官网地址:htt...

2369
来自专栏PhpZendo

是否需要使用依赖注入容器?

本文是依赖注入(Depeendency Injection)系列教程的第 2 篇文章,本系列教程主要讲解如何使用 PHP 实现一个轻量级服务容器,教程包括:

522
来自专栏PHP技术

PHP实现文件下载断点续传

如果我们的网站提供文件下载的服务,那么通常我们都希望下载可以断点续传(Resumable Download),也就是说用户可以暂停下载,并在未来的某个时间从暂停...

1387
来自专栏互联网技术杂谈

stderr基础

2726
来自专栏dotnet core相关

WCF 入门(25,26,27,28)

今天把自己那部分写的差不多了,回来和小伙伴一起又看了一遍《夏洛特烦恼》,还挺好看的,明天继续加班,do it.

753
来自专栏Golang语言社区

Golang测试技术

本篇文章内容来源于Golang核心开发组成员Andrew Gerrand在Google I/O 2014的一次主题分享“Testing Techniques”,...

3456
来自专栏技术分享

.NET应用程序调试—原理、工具、方法

随着应用程序的复杂度不断上升,要想将好的设计思想稳定的落实到线上,我们需要具备解决问题的能力。需要具备对运行时的错误进行定位且快速的解决它的能力。本篇文章我将分...

760
来自专栏青枫的专栏

day60_BOS项目_12

802

扫码关注云+社区