RestTemplate

RestTemplate

spring 提供了二种调用RETST端点的方法

  • RestTemplate:带有同步模板方法 API 的原始 Spring REST 客户端。
  • WebClient:一种非阻塞、反应式的替代方案,支持同步和异步以及流场景

方法看源码吧。

官网:

restTemplate官网

1、官网上有个例子引起了兴趣

String uriTemplate = "https://example.com/hotels/{hotel}";
URI uri = UriComponentsBuilder.fromUriString(uriTemplate).build(42);

RequestEntity<Void> requestEntity = RequestEntity.get(uri)
        .header("MyRequestHeader", "MyValue")
        .build();

ResponseEntity<String> response = template.exchange(requestEntity, String.class);

String responseHeader = response.getHeaders().getFirst("MyResponseHeader");
String body = response.getBody();

与当前项目里面

HttpEntity<FolderAndAudience> requestEntity = new HttpEntity(folderAndAudience);
restTemplate.exchange(SEGMENTATION_SERVER + FTURLConstant.DELETE_AUDIENCE, HttpMethod.DELETE, requestEntity, Void.class);

2、getForObject 返回自己定义.Class对象,getForEntity返回ResponseEntity,包含状态码,body,header等等。

其中,RequestEntity && ResponseEntity继承了HttpEntity,RequestEntity支持build..避免了new 一个对象。

posted @ 2021-11-19 11:08  能借我十块钱吗  阅读(94)  评论(0编辑  收藏  举报