当前位置: 首页 > 知识库问答 >
问题:

如何在创建Spring的RestTemplate时设置标题?

邵耀
2023-03-14

我们可以在启动调用时将标头设置为rest模板,即restTemplate。交换(postrl、HttpMethod.GET、entity、String.class)
其中实体包含标题。

但根据我的要求,我希望在创建restTemplate本身时设置cookie头,而不是在启动实际调用时。我不想重复创建HttpEntity并为其设置头的代码。

在创建restTemplate时,是否有方法设置标题?

共有1个答案

阚砚文
2023-03-14

看起来您可以注入自己的HttpMessageConverter实现,它接受所有请求-canWrit返回true。并将write方法中所需的标头添加到HttpOutputMessage.getHeaders()

我记得我重写了一次ClientHttpRequestFactory。createRequest对其他特定于服务器的静态头执行类似操作。

更新

来自RestTemplate的代码。doWithRequest您可以查看是否没有请求。正文然后从请求实体读取标题。

在这种情况下,您只需扩展RestTemplate并从覆盖的httpEntityCallback返回您自己的请求回调。

 类似资料: