This release is a pre-release and may not be stable for production use.
http-faker
介绍
灵活又简单的mock服务
gitee地址: https://gitee.com/guojongg/http-faker
httpfaker基于faker和flask库,提供强大的逻辑处理能力;通过对配置文件(yaml/json)的描述,可返回想要的任意数据。
支持反向代理模式,只需要设置一个目标服务器地址,即可变成一个反向代理服务器;当匹配到mock规则时返回mock数据;未命中时做代理请求并返回请求结果。
httpfaker针对返回数据的规则编写灵活,简单。除了可以满足传统的接口mock外,还支持处理业务逻辑,可实现真正的业务功能。
适用于:
- 前端人员: 前后端分离开发,无需等到后台接口实现即可开始进行页面请求
- 测试人员: 提前进行接口测试代码编写;服务未至,用例先行
- 其他需要写一个简单api的人员: 通过yaml文件配置,可减少开发代码;无需关注请求处理部分,只需关注自己的业务逻辑即可。
简单使用
# 安装
pip install httpfaker
# 简单使用
httpfaker init
cd httpfaker-project
httpfaker --proxy http://example.com # 指定代理地址时,将作为代理服务器对未命中的请求自动转发到指定的服务器中
上面例子中使用httpfaker init预生成了一个example.yml文件,yaml文件中描述了一个登录的场景:
-
前端通过
post方法调用/api/login这个地址,并在请求body中传来了username和password两个参数。 -
httpfaker接收到请求后会按照logic中描述的逻辑进行业务处理:先打印了请求参数,再调用verify_accont方法, 来验证用户名和密码是否匹配;然后调用gen_token方法,生成token。 (verify_account和gen_token方法已经注册到httpfaker调用函数中了,注册方法见自定义方法的注册) -
在逻辑处理完成后,httpfaker按照
response中描述的内容进行字段返回,headers中引用了在env中定义的content_type;body中的code、msg、data等字段直接引用logic中已经生成的结果。
在上述流程中完成了用户登录到返回数据的一个完整流程,包含了业务处理部分,使mock服务不仅仅只是mock,还可以包括真实的业务逻辑。
配套工具
- http2api: httpfaker支持录入接口数据,使用http2api,只需要在前端进行请求,可以自动将请求内容转换为httpfaker可读的模板。
- swagger2api: 支持将swagger格式的接口数据直接转换为httpfaker可读的模板。
其它
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file httpfaker-0.0.5b1221.tar.gz.
File metadata
- Download URL: httpfaker-0.0.5b1221.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1205abee3520f8643c5eda05e85e15704c14520551a3aaef3d509cc41224ad6d
|
|
| MD5 |
7f3818b6d5099e7cd5556f25b8e6afc4
|
|
| BLAKE2b-256 |
25fd9b15a43ba6521489d7b1fc601712619e587fab330ea6ecd3cca361b9bc6f
|