什么是 RestTemplates?
RestTemplate 采用同步方式执行 HTTP 请求的类,底层使用 JDK 原生 HttpURLConnection API ,或者 HttpComponents等其他 HTTP 客户端请求类库。还有一处强调的就是 RestTemplate 提供模板化的方法让开发者能更简单地发送 HTTP 请求。
RestTemplates APIs
| 方法名 | 描述 |
|---|---|
getForObject |
通过 GET 请求获得响应结果 |
getForEntity |
通过 GET 请求获取 ResponseEntity 对象,包容有状态码,响应头和响应数据 |
headForHeaders |
以 HEAD 请求资源返回所有响应头信息 |
postForLocation |
用 POST 请求创建资源,并返回响应数据中响应头的字段 Location 的数据 |
postForObject |
通过 POST 请求创建资源,获得响应结果 |
put |
通过 PUT 方式请求来创建或者更新资源 |
patchForObject |
通过 PATH 方式请求来更新资源,并获得响应结果。(JDK HttpURLConnection 不支持 PATH 方式请求,其他 HTTP 客户端库支持) |
delete |
通过 DELETE 方式删除资源 |
optionsForAllow |
通过 ALLOW 方式请求来获得资源所允许访问的所有 HTTP 方法,可用看某个请求支持哪些请求方式 |
exchange |
更通用版本的请求处理方法,接受一个 RequestEntity 对象,可以设置路径,请求头,请求信息等,最后返回一个 ResponseEntity 实体 |
execute |
最通用的执行 HTTP 请求的方法,上面所有方法都是基于 execute 的封装,全面控制请求信息,并通过回调接口获得响应数据 |
如何使用
参考
https://juejin.cn/post/6844903842065154061
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/client/RestOperations.html
