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 条评论
登录 后参与评论

相关文章

来自专栏Kevin-ZhangCG

[ Java面试题 ]框架篇二

1054
来自专栏好好学java的技术栈

面试官问的hibernate和mybatis常见面试题

我是一名java开发人员,hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和myb...

1181
来自专栏GopherCoder

『Beego + Swagger 快速上手』

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

elastic-job 新手指南

4944
来自专栏腾讯移动品质中心TMQ的专栏

JAVA代码覆盖率工具JaCoCo-原理篇

关于JAVA代码覆盖率工具JaCoCo,作者会通过三篇来介绍,分别为原理篇、实践篇和踩坑篇,先从原理篇开始介绍~ 一、覆盖率定义 作为一个测试人员,保证产品的软...

8729
来自专栏Java技术分享

“金三银四”招聘期又要到了,快来复习JAVA题!!

由于各操作系统(windows,liunx等)支持的指令集,不是完全一致的。就会让我们的程序在不同的操作系统上要执行不同程序代码。Java开发了适用于不同操作...

1.3K13
来自专栏Java Edge

项目开发中正确的打日志姿势ERROR:WARNINFO:TRACE

使用slf4j 使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。 实现方式统一使用: Logback框架 打日志的正确方式 什么时候应该打...

542
来自专栏ChaMd5安全团队

巅峰极客 第二场 WriteUp

1 返回地址覆盖为printf(func_got)/write(1,func_got,4)来leak libc,并将printf/write返回地址设为game...

1062
来自专栏黑泽君的专栏

day45_Webservice学习笔记_01

Web service 即web服务,它是一种跨编程语言和跨操作系统平台的远程调用技术即跨平台远程调用技术。

861
来自专栏何俊林

一种在Java层实现的守护进程方式

守护进程是一个黑色地带的产物,无论是通过native的方式在linux中fork进程达到,还是在java层通过两个service守护的方式,都是不太友好的做法,...

1936

扫码关注云+社区