junit Java HttpHeaders -如何获取用户代理值?

68bkxrlz  于 2022-11-11  发布在  Java
关注(0)|答案(1)|浏览(179)
HttpHeaders headers = new HttpHeaders();
headers.set("Accept", "application/json");
headers.set("User-Agent", "Mozilla/5.0..."); //note - value hard coded

我目前正在编写一个JUnit测试,其中我创建了一个包含上述请求头的RestTemplate
我目前正在将user-agent头硬编码为Mozilla,我如何才能添加实际的用户代理,而不是将值硬编码到这里来运行测试?

wr98u20j

wr98u20j1#

每个HTTP客户端(或所谓的用户代理)都可以为User-Agent HTTP头定义自己的值,所有主要的HTTP客户端,例如浏览器或命令行工具cURL和wget,都是这样做的。
因为你实际上是通过RestTemplate编写你自己的HTTP客户端,所以你可以决定是为该头定义一个值还是不定义它。如果你选择定义头,它应该遵循HTTP规范(RFC 7231,或当前版本RFC 9110)中给出的规则。
进一步回答您的问题:似乎有一些discussion关于为Sping Boot 应用程序的标头设置默认值,但似乎还没有实现默认值方法。

相关问题