欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何理解restTemplateUtil中幫助類

這期內(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)

綿陽服務(wù)器托管