如何从响应实体标头中筛选和删除标准http标头



我在春季启动中使用rest模板调用一些rest端点,如下所示:

ResponseEntity<String> responseEntity = restTemplate.exchange(url, httpMethod, entity, String.class);

然后我从下面这样的响应实体中读取所有标题:

HttpHeaders httpHeaders = responseEntity.getHeaders();

但是HttpHeaders包含了太多的标头,我只想从中读取属于自定义标头的标头,而且我们不知道自定义标头的名称,所以我只想删除所有标准HTTP标头并获取所有剩余的标头

如何删除所有标准HTTP标头

Apart from creating an array of all known headers from elements of HttpHeaders class, is there any other way to get list of all known http headers?

Map类有一个remove((方法。您可以对所有已知标头的列表进行迭代,删除每个标头。剩下的将是您的自定义标头。

或者,您可以在HttpHeaders上使用toCommaDelimitedString方法,然后对其进行迭代,删除所有已知的标头。

class HttpHeaders defined All standard HTTP headers Key,所以您需要做的是提供一种方法来过滤掉您期望的的自定义标头

最新更新