首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mockserver:收到请求后回调

Mockserver:收到请求后回调
EN

Stack Overflow用户
提问于 2018-02-23 05:46:17
回答 1查看 1K关注 0票数 1

我正在使用Mockserver测试一个异步产生副作用的HTTP服务。比方说,我正在测试在/api/status/{id}中公开HTTP API方法的ServiceA。除了将状态结果返回给接口的调用者之外,ServiceA还会启动异步分析,在满足某些条件时调用ServiceB。假设这个异步过程需要几毫秒到几秒的时间才能完成。

目前,我的mockserver代码看起来像这样:

代码语言:javascript
复制
Long waitTimeoutSeconds = 5L;
Long start = System.currentTimeMillis();
HttpRequest[] asyncRequestsRetrieved = null;

while (start + (waitTimeoutSeconds * 1000L) < System.currentTimeMillis()) {
    asyncRequestsRetrieved = mockServer.retrieveRecordedRequests(HttpRequest.request().withPath("/service/b/path"));
    if (asyncRequestsRetrieved != null && asyncRequestsRetrieved.size > 0) {
        break;
    }
    Thread.sleep(50L);
}

assertNotNull(asyncRequestsRetrieved);
assertTrue(asyncRequestsRetrieved!!.size > 0);

当在给定端点接收到请求时,Mockserver是否公开采取操作(例如,通知侦听器)的模式,还是轮询是我唯一的选择?

EN

回答 1

Stack Overflow用户

发布于 2018-02-23 06:04:06

如果你以异步方式向ServiceB发送请求,那么你会得到一些响应,在这种情况下,轮询是唯一的选择。我假设您的ServiceB有两个端点,一个用于创建作业,另一个用于检查作业的状态,如果准备就绪,则获得结果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48937768

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档