Spring学习笔记之RestTemplate使用小结-创新互联

前言

公司主营业务:网站设计制作、网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出太和免费做网站回馈大家。

作为一个Java后端,需要通过HTTP请求其他的网络资源可以说是一个比较常见的case了;一般怎么做呢?


可能大部分的小伙伴直接捞起Apache的HttpClient开始做,或者用其他的一些知名的开源库如OkHttp, 当然原生的HttpURLConnection也是没问题的


本篇博文则主要关注点放在Sprig的生态下,利用RestTemplate来发起Http请求的使用姿势

I. RestTempalate 基本使用


0. 目标


在介绍如何使用RestTemplate之前,我们先抛出一些小目标,至少需要知道通过RestTemplate可以做些什么,以及我们要用它来干些什么


简单的给出了一下常见的问题如下

  • 普通的Get请求获取返回数据,怎么玩?
  • post提交表达的请求,如何处理
  • post请求中RequestBody的请求方式与普通的请求方式区别
  • https/http两种访问如何分别处理
  • 如何在请求中带上指定的Header
  • 有跨域的问题么?如果有怎么解决
  • 有登录验证的请求,该怎么办,怎样携带身份信息
  • 上传文件可以支持么
  • 对于需要代理才能访问的http资源,加代理的姿势是怎样的

上面的问题比较多,目测不是一篇博文可以弄完的,因此对这个拆解一下,本篇主要关注在RestTemplate的简单Get/Post请求的使用方式上


1. 基本接口


捞出源码,看一下其给出的一些常用接口,基本上可以分为下面几种


// get 请求
public  T getForObject();
public  ResponseEntity getForEntity();

// head 请求
public HttpHeaders headForHeaders();

// post 请求
public URI postForLocation();
public  T postForObject();
public  ResponseEntity postForEntity();

// put 请求
public void put();

// pathch 
public  T patchForObject

// delete
public void delete()

// options
public Set optionsForAllow

// exchange
public  ResponseEntity exchange()

标题名称:Spring学习笔记之RestTemplate使用小结-创新互联
文章转载:http://myzitong.com/article/digojj.html