详解!restTemplate使用实例(各种情况都包含!!)

原来的项目中没有使用过,开始的时候不太明白具体的用法 查阅资料外加项目中别人的使用自己写了接个参考如下 ::

请求携带cookie

        HttpHeaders headers = new HttpHeaders();
        List<String> cookies = new ArrayList<>();
        cookies.add("JSESSIONID=" + Strings.nullToEmpty(jsessionId));
        cookies.add("token=" + Strings.nullToEmpty(token));
        headers.put(HttpHeaders.COOKIE,cookies);
        HttpEntity request = new HttpEntity(null, headers);
        ResponseEntity<String> response = restTemplate.postForEntity(url, request, String.class);

post表单

        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
        MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>();
        map.add("title", title);
        map.add("desc", desc);
        map.add("userid", toUserId);
        HttpEntity<MultiValueMap<String, String>> request = new HttpEntity<MultiValueMap<String, String>>(map, headers);
        ResponseEntity<String> response = restTemplate.postForEntity(url, request, String.class);

post json

        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_JSON);
        headers.setAccept(Lists.newArrayList(MediaType.APPLICATION_JSON));
        HttpEntity<String> entity = new HttpEntity<String>(requestJson, headers);
        ResponseEntity<String> resp = restTemplate.postForEntity(url,entity,String.class);

url post

        String template = baseUrl + "/demo?app={0}&userId={1}";
        String url = MessageFormat.format(template,app,userId);
        return restTemplate.postForEntity(url,null,String.class);

请求图片

HttpHeaders headers = new HttpHeaders();
headers.setAccept(Arrays.asList(MediaType.APPLICATION_OCTET_STREAM));
HttpEntity<String> entity = new HttpEntity<String>(headers);
ResponseEntity<byte[]> response = restTemplate.exchange(url,HttpMethod.GET, entity, byte[].class);
byte[] imageBytes = response.getBody();

猜你喜欢

转载自blog.csdn.net/zty1317313805/article/details/80096584