前后端分离mock server方案(1) -- Moco

虽然前后端分离已经流行很多年了,仍有很多团队不能够充分的利用前后端分离的优势。
主要体现在前端过分依赖服务环境, 将高效的约定分工合作模式理解很浅。

在这里推荐一种mock server的解决方案。 mock server的方案有很多:
    1. Java API
    2. JUnit @Rule
    3. Node.js (npm) module
    4. Grunt plugin
    5. Docker container等

这里推荐较为灵活简单的解决方案【Moco】
源项目github地址https://github.com/dreamhead/...

搭建步骤

  • 1 下载Moco
    Download Standalone Moco Runner
  • 2 启动Java Moco进程

    java -jar moco-runner-<version>-standalone.jar http -p 12306 -g main.json
  • 3 配置main.json
    最佳实践: 配置main.json 引入其他的json

    [
           {
               "include" : "foo.json"
           },
           {
               "include" : "mock.json" 
           } 
       ]
  • 4 编写配置文件:

    1 mock.json
           [
               {
                   "request": {
                       "uri": "/mock"
               },
                   "response": {
                       "text": "Hello, MOTO"
                   }
               }
           ]
           
      2 foo.json    
           [
               {
                   "request": {
                       "uri": "/foo",
                       "queries": {
                       "f": {
                           "match": ".*"  // anyNumber anyString
                       }
                   }
               },
                   "response": {
                       "json": {
                           // 此处为json body
                       }
                   }
               }
           ]
  • 5 修改的配置文件及时生效

    这个是真的讲究啊.

    Moco有很大的缺点。
    1 不支持简洁的YMAL文件格式
    2 不符合OPEN API的标准。所以使用swagger集成,参考前后端分离mock server方案(2)--swagger editor整合

相关推荐