【发布时间】:2021-05-25 07:13:34
【问题描述】:
关于Spring Webflux Webclient的小问题,请教如何增加客户端超时。
设置,我是客户端,我需要通过网络使用第三方 API。
已知此第三方 API 不稳定。对于同样的请求,同样的响应,有时需要 1-2 秒,有时超过 4-5 秒(大多是 4-5 秒??????)
但它是一个很好且重要的 API,payload 响应非常重要。
因此,我认为“等待他们更长时间”是值得的。
请问怎么做?
经过调查,这个第三方 API 确实看到了一些来自其 VIP 的 499 响应。
我相信这意味着“我不想等待”。但我确实想等待更长的时间!
查看 Webclient API 后,我很难找到如何做到这一点。
目前,我正在构建我的 WebClient:
WebClient.create().mutate().defaultHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE, HttpHeaders.ACCEPT, MediaType.APPLICATION_JSON_VALUE).clientConnector(new ReactorClientHttpConnector(HttpClient.create().metrics(true, () -> new MicrometerChannelMetricsRecorder(SERVICE, HTTP)).wiretap(true).secure(sslContextSpec -> sslContextSpec.sslContext(getSslContextBuilder())))).build()
当前的默认超时时间是多少?
请问如何通过属性或代码增加?
类似:
.setDefaultClientSideWaitTime() ?
非常感谢您的帮助
【问题讨论】:
-
spring 参考文档中有一节介绍了如何执行此操作。如果仍有任何不清楚的地方,请通读并更新您的问题。 docs.spring.io/spring-framework/docs/current/reference/html/…
标签: java spring-webflux