zoukankan      html  css  js  c++  java
  • springboot发起http请求

    springboot的spring-web项目下有一个

    RestTemplate

    使用它能够帮助我们发送一些rest请求。

    api相对简单。下面的代码基本概括了能够干什么了。

        @RequestMapping(value = "/query", method = {RequestMethod.GET, RequestMethod.POST, RequestMethod.DELETE})
        public String query(HttpServletRequest request, HttpEntity<String> requestEntity) {
    
            HttpMethod requestMethod = HttpMethod.resolve(request.getMethod());
    
            if (HttpMethod.GET == requestMethod) {
                log.info("request method is {}, query path is {}", request.getMethod(), request.getRequestURL() + "?" + request.getQueryString());
            } else if (HttpMethod.POST == requestMethod) {
                log.info("request method is {}, query path is {}, request body is {}", request.getMethod(), request.getRequestURL(), requestEntity.getBody());
            }
    
            RestTemplate restTemplate = new RestTemplate();
    
            HttpHeaders headers = new HttpHeaders();
            headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
            requestEntity = new HttpEntity<>(requestEntity.getBody(), headers);
    
            ResponseEntity<String> response = null;
            try {
                response = restTemplate.exchange(
                        serverUrl + "/path" + (HttpMethod.GET == requestMethod ? ("?" + request.getQueryString()) : ""),
                        requestMethod,
                        requestEntity,
                        String.class);
            } catch (RestClientException e) {
                log.error(e.toString());
                throw e;
            }
    
            return response.getBody();
    
        }
  • 相关阅读:
    explicit构造函数
    Windows内核编程之:结构化异常处理
    驱动对象DRIVER_OBJECT
    Windows内核编程之:内存管理
    Windows内核编程之:链表
    Windows内核编程之:返回状态值
    设备对象DEVICE_OBJECT
    数据恢复
    Windows内核编程之:数据类型
    Windows内核编程之:检查内存的可用性
  • 原文地址:https://www.cnblogs.com/voctrals/p/8118576.html
Copyright © 2011-2022 走看看