繁体   English   中英

RestTemplate 中的交换方法的目的是什么?

[英]What is the purpose of the exchange method in the RestTemplate?

我目前正在向客户端发送资源,我正在使用已经完成的代码并且我正在修改它,这段代码中有一行我不明白。 好吧,我了解我正在发送或发布资源,我了解此方法采用客户端的 url,它采用 HTTP 请求的类型,例如在这种情况下为 POST,但我不明白为什么此方法采用 nService.getStringHttpEntityWithPayload(负载)和资源.class? 此外,它返回的响应实体将是仅 class 还是带有状态和标头的 class?

ResponseEntity<Resource> responseEntity = restTemplate.exchange(
                eURL,
                HttpMethod.POST,
                nService.getStringHttpEntityWithPayload(payLoad),
                Resource.class);

为什么这个方法需要 nService.getStringHttpEntityWithPayload(payLoad) 和 Resource.class?

getStringHttpEntityWithPayload方法返回一个HttpEntity ,它由一个主体和 header 数据组成,要发送到 URL。 该方法是通过添加内容类型 header 创建请求消息,让接收服务知道正文包含 JSON 数据。

参数Resource.class用于确定将响应正文从服务反序列化到哪个 class。 它定义了返回值的通用类型: ResponseEntity<Resource>

此外,它返回的响应实体将是仅 class 还是带有状态和标头的 class?

我不确定您所说的“仅限班级”是什么意思。 ResponseEntity类似于HttpEntity (实际上是class ResponseEntity<T> extends HttpEntity<T> )。 ResponseEntity class 包含响应正文和标头,以及响应的 HTTP 状态代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM