真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何理解restTemplateUtil中幫助類

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)如何理解restTemplateUtil中幫助類,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

10年積累的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有慶安免費(fèi)網(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è)置請(qǐng)求頭參數(shù)和請(qǐng)求體參數(shù)的post方法
     *
     * @param url
     * @param headers
     * @param params
     * @param restTemplate
     * @return
     */
    public static String postConnect(String url, Map headers, Map params, RestTemplate restTemplate) {
        //header信息,包括了http basic認(rèn)證信息
        MultiValueMap headersMap = new LinkedMultiValueMap<>();
        for (String key : headers.keySet()) {
            headersMap.add(key, headers.get(key));
        }
        //body請(qǐng)求體部分
        MultiValueMap bodyMap = new LinkedMultiValueMap<>();
        for (String key : params.keySet()) {
            bodyMap.add(key, params.get(key));
        }
        //merge成為一個(gè)HttpEntity
        HttpEntity> multiValueMapHttpEntity = new HttpEntity<>(bodyMap, headersMap);

        //當(dāng)響應(yīng)的值為400或401時(shí)候也要正常響應(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 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 param = new LinkedMultiValueMap<>();
        param.add("file", resource);
        ResponseEntity 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中幫助類了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)頁(yè)題目:如何理解restTemplateUtil中幫助類
鏈接分享:http://weahome.cn/article/iiggoc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部