Moco

解决moco框架API在post请求json参数情况下query失效的问题

怎甘沉沦 提交于 2019-12-10 03:32:37
在使用moco API做接口虚拟化的过程中遇到一个比较棘手的问题,就是根据官方文档提供的案例,并不能跑通post请求在处理json传参格式的虚拟化。经过查询源码,发现了一个问题: 源码: public class ParamRequestExtractor extends HttpRequestExtractor<String[]> { private final String param; public ParamRequestExtractor(final String param) { this.param = param; } [@Override](https://my.oschina.net/u/1162528) protected Optional<String[]> doExtract(final HttpRequest request) { String[] reference = request.getQueries().get(this.param); return fromNullable(reference); } } 在获取请求的内容时,发现该方法不能获取到正确的请求参数,后来索性自己重写了一个Extractor类,内容如下: package com.fun.moco.support; import com.github.dreamhead.moco

给moco API添加limit功能

杀马特。学长 韩版系。学妹 提交于 2019-11-29 06:42:15
在使用moco API的时候,发现文档中的一些功能并不能满足构建测试服务的需求,需要自己开发一些功能。之前两篇主要讲了moco本身的补充,本篇说说moco文档之外的功能:limit。 主要是用于限制访问次数,并不针对某个session或者同一个用户(本人暂时没有这方面的需求,故没有开发)。 使用场景的话:小游戏的里面的抽奖,订单提交,耗时较长的功能等。在实际的业务逻辑中,很可能会有短时间内不允许提交多次,请求多次的需求。 下面上代码: package com.fun.moco.support; import com.fun.utils.Time; import com.github.dreamhead.moco.HttpRequest; import com.github.dreamhead.moco.MocoConfig; import com.github.dreamhead.moco.ResponseHandler; import com.github.dreamhead.moco.handler.AbstractResponseHandler; import com.github.dreamhead.moco.internal.SessionContext; import com.github.dreamhead.moco.model.MessageContent;