当前位置: 首页 > 知识库问答 >
问题:

获取web客户端的响应时间

谷良弼
2023-03-14

只是想知道有没有办法得到spring Web-Flux的web客户端的响应时间?

共有1个答案

左丘积厚
2023-03-14

您还可以使用elapsed()进行此类操作

webClient.get().uri("/bla").retrieve()
     .bodyToMono(String.class)
     .elapsed()  // map the stream's time into our streams data
     .doOnNext(tuple -> log.info("Milliseconds for retrieving {}", tuple.getT1()))
     .map(Tuple2::getT2) // after outputting the measurement, return the data only

注意,elapsed()在整个反应流之后,所以如果您在WebClient之前执行某些操作······部分,您应该在前面放一个elapsed()--这会重置计时器。

 类似资料:
  • 问题内容: 我试图从Web服务而不是通常的POJO集合中获取原始XML响应。 我正在使用从WSDL和某些模式生成的Web服务客户端(因此我可以访问该客户端的代码)。该客户端是在RAD 7.5中生成的,我认为是使用JAX- WS。我一直在研究客户端代码本身,但是我什至不确定客户端代码是否处理过原始XML或是否将其传递给其他库。 问题答案: 您可以使用 您可以使用方法简单地获取消息并将消息转换为Str

  • 但是,我不确定为什么它不输出get请求的值?它实际上并不触发endpoint。

  • 问题内容: 我正在使用OkHttp客户端和Jackson的Retrofit进行Json序列化,并想获取响应的标头。 我知道我可以扩展OkClient并拦截它。但这是在反序列化过程开始之前进行的。 我基本上需要的是将标头与反序列化的Json Object一起使用。 问题答案: 在Retrofit 1.9.0中,如果您使用接口的回调异步版本, 然后您的回调将收到一个对象 其中有一个方法叫做 对于Ret

  • 我通过一个spring上下文注入了一个JAX RS客户端,如下所示: 在成功响应(200、202、204)的情况下,如何访问响应状态?

  • 我正在调用一个endpoint,在该endpoint,我需要的信息将在响应头中返回(https://keycloak.discourse.group/t/rest-api-create-user-no-user-identifier-in-response/1964/4)。如果我使用Quarkus REST客户端(https://Quarkus.io/guides/rest-client)如何检索

  • 我正在spring应用程序中使用web客户端 我在执行相同操作时面临内存泄漏问题 我正在使用下面的代码获取来自服务的非2xx响应的响应体: 我的问题是,如果我在responseMono上使用dispose方法,处理过程需要很长的时间,而没有它,我会面临内存泄漏问题。我在这里做错什么了吗?