精簡版 RestTemplateUtil ( 單例模式,附帶自定義 httpHeaders 提交 )java
package com.havent.mobile.utils; /** * Spring RestTemplate 工具類 * @author HAVENT * @date 2018-07-29 */ import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.ResponseEntity; import org.springframework.web.client.RestTemplate; public class RestTemplateUtil { private static class SingletonRestTemplate { static final RestTemplate INSTANCE = new RestTemplate(); } private RestTemplateUtil() { } public static RestTemplate getInstance() { return SingletonRestTemplate.INSTANCE; } public static String post(String url, String data, String token) throws Exception { HttpHeaders headers = new HttpHeaders(); headers.add("Accept", "application/json"); headers.add("Accpet-Encoding", "gzip"); headers.add("Content-Encoding", "UTF-8"); headers.add("Content-Type", "application/json; charset=UTF-8"); headers.add("ACCESS_TOKEN", token); HttpEntity<String> requestEntity = new HttpEntity<String>(data, headers); return RestTemplateUtil.getInstance().postForObject(url, requestEntity, String.class); } public static String get(String url, String token) { HttpHeaders headers = new HttpHeaders(); headers.add("Accept", "application/json"); headers.add("Accpet-Encoding", "gzip"); headers.add("Content-Encoding", "UTF-8"); headers.add("Content-Type", "application/json; charset=UTF-8"); headers.add("ACCESS_TOKEN", token); HttpEntity<String> requestEntity = new HttpEntity<String>(null, headers); ResponseEntity<String> response = RestTemplateUtil.getInstance().exchange(url, HttpMethod.GET, requestEntity, String.class); String responseBody = response.getBody(); return responseBody; } }