摘自博客园:https://www.cnblogs.com/mikasama/p/9838480.html

1、无聊的背景、起源:

如今的业务系统越来越复杂庞大,各个功能直接的调用也是多如牛毛,但如果在联调的时候,恰好被调的接口正在开发,怎么办?傻傻的等么,不存在的!这时会搭建一些server来进行mock。使得被开发功能的调试和测试功能能够正常进行下去。这就是mock server的出现的原因。

网上找了张图片,可以很好的解释mock server的作用:

来来来,搞起来

2、搭建mock server

2.1、安装flask

pip install flask(本文只需flask)

2.2、代码实现,新建my_mock_server.py,填入下列代码

# /usr/bin/env python
# -*- coding:utf-8 -*-from flask import abort, jsonify, Flask, request, Responseapp = Flask(__name__)
# 增加配置,支持中文显示
app.config['JSON_AS_ASCII'] = Falsetasks = {"code": 0,"msg": "OK","data": {"waybillNumber": "1526351","serviceMode": "10","waybillStatus": "10","deliveryAbbreviationAddress": "深圳","pickupAbbreviationAddress": "深圳"},"traceId": "dp1r"
}@app.route('/task', methods=['GET','POST'])
def get_task():return jsonify(tasks)if __name__ == '__main__':app.run(host = '0.0.0.0',port = 6868,debug = True)

一言以蔽之:利用flask的api服务实现mock server功能

简要说明:

tasks字典,存储你的response,而这个tasks是通过下面的函数get_task实现的。

get_task函数前面增加了装饰器,是定义了访问路由,即访问ip:端口/task,即可访问。

jsonify方法将字典转换为json返回给前端。

类似的,可以定义各种task和访问路由,以实现不同的mock功能

2.3、运行mock_server.py

python my_mock_server.py

网页打开:

postman访问:get/post

可以看到,因为没有定义参数,所以无论传不传参,接口照常访问

至此,极简mock server就搭建完毕。

后话,功能单一,适用场景有限。如果想实现更多共,可以网上找找资料,此为简单入门,应急用。

另外,python搭建的mock server性能有限,如需高性能mock server,推荐java版mock。

只需一个jar包,一个json配置文件,即可

Linux下启动服务:nohup java -jar moco-runner-0.11.0-standalone.jar http -p 5858 -c conf.json > /home/mock_runner/mock.log &jar包可在此下载:http://note.youdao.com/noteshare?id=4094b776f4749ede8665b4e7da38df5f&sub=0DD8BF1BB43247D182F2FEC3FBBB24D6

json配置文件参考:

[

{

"response" :

{

"text" : "Hello, Moco"

}

}

]

1分钟搭建极简mock server相关推荐

  1. 华为云服务器使用之搭建极简服务器

    华为云服务器之搭建极简服务器 今天在牛客网看到了华为云服务器的优惠活动,真的是非常优惠,本人正好也想学习一些web开发方面的内容,于是立马下单了. 服务器系统版本:Ubuntu16.04 服务器配值: ...

  2. minimal-mock 极简 mock 服务

    minimal-mock 极简 mock 服务,采用 koa 搭建,支持全局配置及多种数据格式. 文章首发于minimal-mock 极简 mock 服务. 什么是 Mock 数据:在前后端约定好 A ...

  3. 搭建极简GB28181 网守和网关服务器,建立AI推理和3d服务场景,然后开源代码(一)

    1 目的 这里说的开源并非使用开源现有的系统,而是自己写个系统去开源. 为何要搭建极简GB服务,我们在公司里公司先后使用了nodejs ,go ,c# ,c++ 等等搭建了不同类型的GB服务,这个使用 ...

  4. 族蚂建站5步搭建极简风网站。

    极简主义网页设计逐渐成为主流.极简设计风格除了看起来看起来比较漂亮之外,还能提高用户体验.而如今,它为何不能成为网页设计的趋势呢?很多用户在吐槽现在的网站布局冗杂.内容挤压在同一个页面中,用户体验差. ...

  5. 二进制方式搭建极简kubernetes1.10环境@centos7.3

    https://www.kubernetes.org.cn/4041.html 第1章  环境概述 环境介绍: OS:Linux CentOS 7.3  3.10.0-514.el7.x86_64 M ...

  6. python搭建博客系统_用Pelican快速搭建极简静态博客系统

    我一直建议每个开发者都要有写博客记笔记的习惯,一来可以沉淀知识,二来可以帮助别人,我使用过很多博客平台,也用Python开发过博客系统,就这么个东西折腾好几年,一直找不到理想的产品,直到我用Pelic ...

  7. 如何用Serverless搭建Mock Server?

    引言 (一)什么是Serverless 无服务器Serverless是一种云原生开发模型,可使开发人员专注构建和运行应用,而无需管理服务器.云函数(Serverless Cloud Function, ...

  8. 简七32堂极简理财课——模块一:理财前一定要知道的财富真相

    文章目录 一.金钱的三个秘密 1.金钱是一种度量衡 2.钱的价值无时无刻不在发生着变化 3.复利的滚雪球效应 二.摸清富人赚钱思维 1.富人思维到底是什么 2.富人思维如何影响财富的 3.如何培养自己 ...

  9. 打造淘宝极简包的轻量化框架

    淘宝极简包项目分离了一个可以快速搭建极简App的框架. 如今app冗余与包大小一直都是很多业务挥之不去的优化项.行业内很多极简包如雨后春笋般冒出来.又或者是很多业务对极简包的探索也有积极的尝试. 极简 ...

最新文章

  1. Introduction to Machine Learning
  2. 阴阳师人数最多的服务器,《阴阳师》手游部分服务器合并公告
  3. aspnet中gridview文本只显示开始几个文本_软网推荐:三个小软件 轻松解决文本操作难题...
  4. modernizer的意义
  5. java rop_Java命令行界面(第23部分):Rop
  6. 演练 创建数据库MySchool 1007 sqlserver
  7. [Selenium] CSS3 选择器
  8. mysql 导出bson格式_mongodb 导入导出GridFS【图片/文件/视频/音频等多媒体文件的导入导出】...
  9. Android 快捷方式
  10. win11杜比视界音效怎么打开 window11开启杜比视界音效的步骤方法
  11. mac下selenium+python环境搭建
  12. executor-cores参数并未对vcores生效的原因分析
  13. 数据结构与算法JavaScript描述——队列
  14. Vant Weapp - 有赞出品的免费开源微信小程序组件库
  15. DNK编程 JNI 之 javah
  16. VS code,Live Server更改默认浏览器
  17. CSS中强大的EM(转)
  18. 高通MSM8953点屏记录
  19. 螳螂捕蝉、黄雀在后——从一个成语谈观察家模式
  20. 修改Datagrip 2021.2.4 系统文件插件等目录的位置

热门文章

  1. android 打包hbuilder 高德地图加载不出来_十一黄金周地图很忙:百度获央视报道,高德忙道歉,究竟谁好用?...
  2. linux 修改ip地址_Day.19 变更IP地址
  3. 基于点云的机器人抓取识别综述
  4. 安全狗php站点404,访问编码后的中文URL返回404错误的解决方法
  5. OpenEye | Windows下安装配置OpenEye
  6. OpenCV | OpenCV 图片换底色
  7. GROMACS运行参数之npt.mdp文件详解
  8. java isfocusowner_Java JTextArea.isFocusOwner方法代码示例
  9. 服务器崩溃日志 | 误删 OpenSSL 的那点事
  10. 微生物生态期刊Soil Biology and Biochemistry(SBB)简介