spring boot 中访问 REST 接口

RestTemplate restTemplate = new RestTemplate();
Object result = restTemplate.getForObject("https://www.baidu.com", String.class);

@Controller
 public class RestTemplateAction {
  
      @Autowired
      private RestTemplate template;
 
     @RequestMapping("RestTem")
     public @ResponseBody User RestTem(String method) {
         User user = null;
         //查找
         if ("get".equals(method)) {
             user = template.getForObject(
                     "http://localhost:8080/tao-manager-web/get/{id}",
                     User.class, "呜呜呜呜");
             
             //getForEntity与getForObject的区别是可以获取返回值和状态、头等信息
             ResponseEntity re = template.
                     getForEntity("http://localhost:8080/tao-manager-web/get/{id}",
                     User.class, "呜呜呜呜");
             System.out.println(re.getStatusCode());
             System.out.println(re.getBody().getUsername());
             
         //新增
         } else if ("post".equals(method)) {
             HttpHeaders headers = new HttpHeaders();
             headers.add("X-Auth-Token", UUID.randomUUID().toString());
             MultiValueMap postParameters = new LinkedMultiValueMap();
             postParameters.add("id", "啊啊啊");
             postParameters.add("name", "部版本");
             HttpEntity> requestEntity = new HttpEntity>(
                     postParameters, headers);
             user = template.postForObject(
                     "http://localhost:8080/tao-manager-web/post/aaa", requestEntity,
                     User.class);
         //删除
         } else if ("delete".equals(method)) {
             template.delete("http://localhost:8080/tao-manager-web/delete/{id}","aaa");
         //修改
         } else if ("put".equals(method)) {
             template.put("http://localhost:8080/tao-manager-web/put/{id}",null,"bbb");
         }
         return user;
 
     }
 }

 

你可能感兴趣的:(spring boot 中访问 REST 接口)