這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何理解restTemplateUtil中幫助類,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
10年積累的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有慶安免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
import com.zzb.business.customerInfo.config.ReportConfig; import com.zzb.business.customerInfo.config.connection.PengYuanConfig; import org.springframework.core.io.FileSystemResource; import org.springframework.http.HttpEntity; import org.springframework.http.HttpMethod; import org.springframework.http.ResponseEntity; import org.springframework.http.client.ClientHttpResponse; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; import org.springframework.web.client.DefaultResponseErrorHandler; import org.springframework.web.client.RestTemplate; import java.io.File; import java.io.IOException; import java.util.Map; /** * @author edison_kwok */ public class RestTemplateUtils { /** * 可以設(shè)置請求頭參數(shù)和請求體參數(shù)的post方法 * * @param url * @param headers * @param params * @param restTemplate * @return */ public static String postConnect(String url, Map<String, String> headers, Map<String, String> params, RestTemplate restTemplate) { //header信息,包括了http basic認證信息 MultiValueMap<String, String> headersMap = new LinkedMultiValueMap<>(); for (String key : headers.keySet()) { headersMap.add(key, headers.get(key)); } //body請求體部分 MultiValueMap<String, String> bodyMap = new LinkedMultiValueMap<>(); for (String key : params.keySet()) { bodyMap.add(key, params.get(key)); } //merge成為一個HttpEntity HttpEntity<MultiValueMap<String, String>> multiValueMapHttpEntity = new HttpEntity<>(bodyMap, headersMap); //當(dāng)響應(yīng)的值為400或401時候也要正常響應(yīng),不要拋出異常 restTemplate.setErrorHandler(new DefaultResponseErrorHandler() { @Override public void handleError(ClientHttpResponse response) throws IOException { if (response.getRawStatusCode() != 400 || response.getRawStatusCode() != 401) { super.handleError(response); } } }); ResponseEntity<String> responseEntity = restTemplate.exchange(url, HttpMethod.POST, multiValueMapHttpEntity, String.class); return responseEntity.getBody(); } /** * 上傳文件到文件系統(tǒng) * * @param file * @return */ public static String upload(File file, RestTemplate restTemplate, String uploadUrl) { if (!file.exists()) { return null; } //將文件傳入文件管理系統(tǒng) FileSystemResource resource = new FileSystemResource(file); MultiValueMap<String, Object> param = new LinkedMultiValueMap<>(); param.add("file", resource); ResponseEntity<String> pathEntity = restTemplate.postForEntity(uploadUrl, param, String.class); //刪除本地文件 file.delete(); //返回文件路徑 例如:risk/file/customerReport/20190621/19062113582560509589.pdf try { return JsonUtils.parse(pathEntity.getBody(), new Object[0]); } catch (IOException e) { e.printStackTrace(); } return null; } }
上述就是小編為大家分享的如何理解restTemplateUtil中幫助類了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
本文題目:如何理解restTemplateUtil中幫助類
標(biāo)題來源:http://www.chinadenli.net/article2/iiggoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、做網(wǎng)站、靜態(tài)網(wǎng)站、App開發(fā)、網(wǎng)站營銷、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)