【问题标题】:Spring - generic method for getting body from ResponseEntity using HttpEntitySpring - 使用 HttpEntity 从 ResponseEntity 获取正文的通用方法
【发布时间】:2017-11-02 10:17:12
【问题描述】:

在我的代码中,我经常通过以下方式将 HttpEntity 与 ResponseEntity 一起使用:

HttpEntity<?> request = new HttpEntity<String>(myObject, headers);

ResponseEntity<String> response = restTemplate.exchange("someurl", HttpMethod.POST, request, String.class);

然后

response.getBody()

我一直重复这段代码,我想知道是否有可能创建一个通用方法,当我向它提供我想要发送的对象、一个 url 和一个HttpMethod 类型。 响应正文大部分时间是字符串,但也可以是对象。

【问题讨论】:

    标签: java spring httpentity


    【解决方案1】:

    您可以使用下面的代码,这里的响应正文和请求正文是通用的:

    public <T, R> T yourMethodName(R requestBody, 
                                   MultiValueMap<String, String> headers, 
                                   String url, 
                                   HttpMethod type, 
                                   Class<T> clazz) {
        HttpEntity<?> request = new HttpEntity<String>(requestBody, headers);
       //You have to create restemplate Obj somewhere
        ResponseEntity<T> response = restTemplate.exchange(url, type, request, clazz);
        return response.getBody();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-24
      • 2017-12-24
      • 1970-01-01
      • 2022-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多