1 RestTemplate简介
(1) spring框架提供的http请求客户端,简化了http请求的代码编写
(2)提供了泛型的支持,以及返回结果的自动类型转换,大大提高代码复用性,以及代码的简化
2 RestTemplate的常用方法
(1)getForEntity() 发送一个HTTP GET请求,返回的ResponseEntity包含了响应体所映射成的对象
(2)getForObject() 发送一个HTTP GET请求,返回的请求体将映射为一个对象
(3)postForEntity() POST 数据到一个URL,返回包含一个对象的ResponseEntity,这个对象是从响应体中映射得到的
(4)postForObject() POST 数据到一个URL,返回根据响应体匹配形成的对象
3 使用经验
(1) 出现调用的接口返回json格式字符串,但是ContentType是texthtml(这样只能获取String格式,自己进行json字符串转对象)
1)原因:后端的响应一般都是使用@RequestBody转成json格式进行响应,响应格式一般要是application/json,如果只是响应一个json字符串返回,但是响应格式是text/html,这样就不会对字符串进行json解析了,所以只能使用字符串格式进行接收
2)现象:使用PostForObject方法请求,如果responseType是使用String类型去接收,可以获取,如果使用对象接收不行
!!!有待详细的测试方法使用
(2) 解析返回数据使用的是类型转换器,RestTemplate是使用MediaType来选择转换器的