模拟服务器 Moco 0.10.1 发布

dreamhead
 dreamhead
发布于 2015年05月13日
收藏 38

模拟服务器 Moco 0.10.1 发布

  • 使用 httpServer 作为 API,且已经弃用 httpserver ,下一版本中将会删除 httpserve

  • 文件和路径资源增加字符集

  • 单位时间延迟(Latency with time unit)和没有时间单位延迟都被弃用,也将在下一版本中被删除

  • 日志文件增加字符集

  • 模版作为文件和路径资源的文件名

变更

本次发布对使用Java API的用户最大影响在于,原来的 httpserver 已经了,推荐使用httpServer。

    HttpServer server = httpServer(12306);

另外一个废弃掉的API是没有TimeUnit的latency,推荐使用有时间单位的latency接口。

    server.response(latency(1, TimeUnit.SECONDS));

以上废弃的API将会在下一次发布中移除,请尽早更新。

接下来,比较大的变动是增加了字符集,file和pathResource都可以进行字符集的处理。

    server.response(file("gbk.response", Charset.forName("GBK")));

甚至,日志也指定对应的字符集:

    HttpServer server = httpServer(port(), log("path.log", Charset.forName("UTF-8")));

模板在原来对内容处理的基础上,增加了对文件名的处理:

    server.response(file(template("${var}.response", "var", "foo")));

这样一来,你可以把更多模板的特性用在文件名上,比如jsonPath、xpath等,也就是说,可以把不同请求应答的结果,放到不同的文件里。当然,你可以把它用在JSON配置文件里:

{
    "response":
    {
      "file":
      {
        "name": {
          "template": {
            "with" : "${var}.response",
            "vars" : {
              "var" : "foo"
            }
          }
        }
      }
    }
  }

这次发布还有一个针对于JSON API的调整,就是现在可以mount的时候,额外增加应答配置,比如像下面这样:

  {
    "mount" :
    {
      "dir" : "src/test/resources/mount",
      "uri" : "/mount-response",
      "headers" : {
        "Content-Type" : "text/plain"
      }
    }
  }

还有一个针对全局配置的特性,就是配置全局Request,如果你想实现一个全局token,保证每次请求都带过来,现在,就不必在每个请求上编写,只要配置一个全局的就好了:

  {
    "request" : {
      "headers" : {
        "foo" : "bar"
      }
    },
    "include": "blah.json"
  }

还有一个实现细节方面的调整,如果在模板里采用了xpath或jsonpath,可能会返回多个值,可以参考freemarker的文档编写对多值对象的处理。

更多发布相关信息,请参考Release Notes

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:模拟服务器 Moco 0.10.1 发布
加载中

最新评论(5

德胜
德胜

引用来自“西夏一品堂”的评论

干啥的

引用来自“dreamhead”的评论

Moco是一个模拟服务器,你可以用几行json代码,就模拟出一个服务器,可以用来测试集成接口,或是做web开发等。
一直想弄个类似的,原来已经有了,看来还是书读少了,哈哈,我去看看代码.
DuLerWeil
DuLerWeil
用过,用来测api很爽
dreamhead
dreamhead

引用来自“西夏一品堂”的评论

干啥的
Moco是一个模拟服务器,你可以用几行json代码,就模拟出一个服务器,可以用来测试集成接口,或是做web开发等。
西夏一品堂
西夏一品堂
干啥的
返回顶部
顶部