我可以使用toEntity()方法返回ResponseEntity,如下所示:
@GetMapping("/uri")
public Mono<ResponseEntity<Data[]>> methodName() {
return webClient
.get()
.uri("http://localhost:8088/externalService")
.accept(MediaType.APPLICATION_JSON)
.retrieve()
.toEntity(Data[].class);
}
但是我想在返回之前处理响应头。上面的代码将WebClient响应转换为响应实体并立即返回,但我想将其存储在响应实体变量中,处理它,然后返回响应实体。
我提到了这个-
当我试图将其存储在varibale中时,我遇到了这个错误-
您可以简单地使用Reator的map
运算符来修改标头:
return webClient
.get()
.uri("http://localhost:8088/externalService")
.accept(MediaType.APPLICATION_JSON)
.retrieve()
.toEntity(Data[].class)
.map(responseEntity -> responseEntity.getHeaders().add("header", "header-value");
或者,您可以使用. Handell
运算符来提供响应处理:
.handle((responseEntity, sink) -> {
if(!isValid(responseEntity)){
sink.error(new InvalidResponseException());
} else if (isOk(responseEntity))
sink.next(responseEntity);
}
else {
//just ignore element
}
})
我正在尝试使用Web客户端创建REST调用 我只想记录通话结果。成功时 - 使用响应正文记录成功消息,在 5XX 或超时或其他时 - 记录错误消息。日志应该在后台创建(而不是由创建调用的线程创建)但是每次都会执行,工作正常,但也有 记录在日志文件中。 我也在一些教程中看到过方法,但在我的设置中有这样的方法。 如何记录成功和失败消息?
我可以使用现在已弃用的方法将WebClient响应转换为响应实体。 请建议实现相同结果的其他方法。下面是我的代码。
我通过扩展改型回调生成了类。我想将响应解析为字符串。在我的例子中,每个响应都得到这种类型的JSON对象。在成功回应的情况下: 万一发生故障响应 如何将响应体转换为JsonObject,以便检查字段“success”:并在成功时导航各自方法--onResponseSuccess(Call Call,response response);在失败时导航onResponseFailure(Call Cal
本文向大家介绍AngularJS转换响应内容,包括了AngularJS转换响应内容的使用技巧和注意事项,需要的朋友参考一下 从远程API获取到的响应内容,通常是json格式的,有时候需要对获取到的内容进行转换,比如去除某些不需要的字段,给字段取别名,等等。 本篇就来体验在AngualrJS中如何实现。 在主页面,还是从controller中拿数据。 以上,userName, url字段是从源数据中
我在使用WireMock时遇到了一个问题,我已经扩展了< code>ResponseTransformer并实现了所有需要的方法,如下所示: 现在我想将这个特定的变压器应用于我写的存根之一,存根如下所示: 当我启动服务并执行后调用时,我确实看到应用了转换器,但响应实际上并没有被转换。在启动服务时,我也尝试在config部分应用transformer,但这无济于事。 因此,我的问题是,我应该如何正确
问题内容: 我无法将SOAP响应转换为php中的Array。 这是代码 这是SOAP响应。 我使用以下方法将其转换为数组,但输出为空。 请给我建议。 问题答案: 终于我找到了解决方案 我们可以通过以下方式从SOAP获得响应主体 范例1: 示例2: