如何从Spring 5 WebClient ClientResponse中提取响应标头和状态代码
2022-09-01 09:30:07
我是Spring Reactive框架的新手,并试图将Springboot 1.5.x代码转换为Springboot 2.0。我需要从Spring 5 WebClient ClientResponse进行一些过滤,body和状态代码后返回响应标头。我不想使用block()方法,因为它会将其转换为同步调用。我能够非常轻松地使用bodyToMono获得响应体。另外,如果我只是返回 ClientResponse,我会得到状态代码、标头和正文,但我需要根据 statusCode 和标头参数处理响应。我尝试订阅,平面地图等,但没有任何效果。
例如 - 下面的代码将返回响应正文
Mono<String> responseBody = response.flatMap(resp -> resp.bodyToMono(String.class));
但类似的范式并不能获得statusCode和Responsue标头。有人可以帮助我使用Spring 5反应式框架提取statusCode和head参数吗?