RestTemplatePost请求携带参数及headers

由于之前一直使用httpclient调用三方接口 最近发现restTemplate比较好用但是网上查的资料零零散散的所以就整理好封装成方法放在这里

 

 

/**
     * POST方式请求接口
     * @param url
     * @param map
     * @param restTemplate
     * @return
     */


    public static  JSONObject requestByPOST (String url,Map map,RestTemplate restTemplate,HttpHeaders headers){
      //  result=restTemplate.postForEntity(basicUrl+"/api/login",parameter,String.class);
        //发送请求
        String parameters=mapToString(map);
        HttpEntity> request = new HttpEntity(parameters,headers);
        ResponseEntity responseEntity=null;
        try {
            responseEntity =restTemplate.exchange(url,HttpMethod.POST,request,String.class);
        }catch (HttpStatusCodeException exception){
           byte [] bytes= exception.getResponseBodyAsByteArray();
            String  errMsg = null;
            try {
                errMsg = new String(bytes,"UTF-8");
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }

            logger.error(errMsg);
            Reporter.log(errMsg);
        }

 

 

你可能感兴趣的:(RestTemplate)