写了一个接口 mock 工具 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
AutumnVerse
V2EX    分享创造

写了一个接口 mock 工具

  •  
  •   AutumnVerse 2022-06-02 10:29:38 +08:00 3168 次点击
    这是一个创建于 1293 天前的主题,其中的信息可能已经有所发展或是发生改变。

    QickMock 即开即用,即关即停。单文件,无依赖的接口 Mock 工具

    背景 1:

    公司一直用的 YAPI 做接口 mock ,某次线上事故,找了一台机器摘除流量后开始在线上 debug ,但是线上环境和 Yapi 网络不通,没法直接用 Yapi Mock 接口。于是就想在服务器本机开个 Mock Api ,网上找了一堆工具,特喵的部署一个比一个复杂,一会依赖 Mongodb ,一会依赖 MySQL ,各个都宣称自己支持多用户,权限组等等,但是我特喵就要一个 Mock 工具,居然找不到一个方便快速部署运行的。

    背景 2:

    给同事分享 mock 数据的时候,每次开权限相当麻烦(走审批流),然后还要说半天,我寻思,咋就没有一个工具,把文件 Copy 个对方,对方直接运行就能看到数据呢

    So!

    我就花了一天时间,开发了这个工具。技术栈是 Golang+Vue ,单文件运行,无任何依赖。接口配置保存到本地文件中,如果需要分享直接 copy 文件即可。

    同时,支持自定义脚本控制返回数据,支持超时等常用设置。

    目前不足:

    界面十分十分简陋。

    其他:

    欢迎体验,有好的建议或者发现 bug 欢迎提 issue 反馈。

    14 条回复    2022-06-08 17:53:23 +08:00
    creanme
        1
    creanme  
       2022-06-02 10:55:23 +08:00
    没看到写怎么配置
    AutumnVerse
        2
    AutumnVerse  
    OP
       2022-06-02 11:16:05 +08:00
    @creanme #1 有管理页面,不需要手写配置
    AutumnVerse
        3
    AutumnVerse  
    OP
       2022-06-02 11:25:11 +08:00
    @creanme #1 每个接口在数据目录中对应一个文件夹,文件夹中有 2 个文件,第一个是 settings.json ,存储接口的各种配置,比如响应时间,http 状态码,自定义脚本等,第二个文件是 response ,存储接口的返回数据

    自己手写这 2 个文件也是可以的。分享给别人的话直接 copy 这个文件夹
    creanme
        4
    creanme  
       2022-06-02 11:45:19 +08:00
    @jiangwei2222 在管理页面怎么添加接口?
    jackyin
        5
    jackyin  
       2022-06-02 13:31:33 +08:00
    界面简陋不算不足,最讨厌开发工具花里胡哨了 T.T
    AutumnVerse
        6
    AutumnVerse  
    OP
       2022-06-02 13:56:50 +08:00
    @creanme #4 我我我。。。忘记放新增按钮了

    http://127.0.0.1:8080/edit.html

    可以输入 url 进页面
    AutumnVerse
        7
    AutumnVerse  
    OP
       2022-06-02 14:11:29 +08:00
    @creanme #1 重新发了一个版本,首页把新增按钮加上了
    feller
        8
    feller  
       2022-06-02 14:51:32 +08:00
    lazyrm
        9
    lazyrm  
       2022-06-02 14:59:17 +08:00
    open ./run_data/|||user|||get/settings.json: The filename, directory name, or volume label syntax is incorrect.
    AutumnVerse
        10
    AutumnVerse  
    OP
       2022-06-02 15:25:01 +08:00
    @lazyrm #9
    @feller #8

    感谢反馈,一直在 mac 下面开发,没注意到 win 系统这个路径不能用。重新发了一版,现在应该可以了
    jay0726
        11
    jay0726  
       2022-06-02 17:46:43 +08:00
    Macos 用户卡在了如何运行下载的二进制文件上,windows 的 exe 文件才能双击运行吧,macos 的咋操作?
    yplove156
        12
    yplove156  
       2022-06-02 20:56:13 +08:00
    想的和我一样,所以我在我的工具里面加上了 http mock 的功能。
    不过我的比你好看
    ![]( http://img.xfisher.com/WechatIMG27.png)
    balabalaguguji
        13
    balabalaguguji  
       2022-06-02 22:05:53 +08:00
    有现成的不试下? https://easydoc.net
        14
    AutumnVerse  
    OP
       2022-06-08 17:53:23 +08:00
    @jay0726 #11 mac 应该要下载下来,然后执行"chmod +x xxx",添加执行权限

    @balabalaguguji 这类工具功能太多了,部署太复杂了,我想要的仅仅是下载,然后运行就行了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3795 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 10:17 PVG 18:17 LAX 02:17 JFK 05:17
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86