Java URLConnection setRequestProperty vs addRequestProperty
假设我正在与web服务器进行HTTP对话,我将接受html或文本,但更喜欢html。换句话说,标题应该是(我想!) 接受:text/html,text/* 我正在使用Java,所以我有一个URLConnection。我应该使用:Java URLConnection setRequestProperty vs addRequestProperty,java,http,http-headers,urlconnection,Java,Http,Http Headers,Urlconnection,假设我正在与web服务器进行HTTP对话,我将接受html或文本,但更喜欢html。换句话说,标题应该是(我想!) 接受:text/html,text/* 我正在使用Java,所以我有一个URLConnection。我应该使用: myUrlConnction.setRequestProperty("Accept", "text/html"); myUrlConnction.addRequestProperty("Accept", "text/*"); 或 或者它们是等效的 一般来说,我看到的大
myUrlConnction.setRequestProperty("Accept", "text/html");
myUrlConnction.addRequestProperty("Accept", "text/*");
或
或者它们是等效的
一般来说,我看到的大多数第三方代码似乎并不太担心这些头的顺序或多个值,因此我想知道它最终是如何工作的。第一个代码段将产生两个接受头,而第二个代码段将产生一个带有两个选择器的接受头 事实上,它们是等价的 该规范还规定,更具体的媒体范围具有优先权,因此两者都会产生预期的行为 如果必须指定多个介质范围,并且它们同样特定,则可以添加q参数
来源:http 1.1规范():setRequestProperty和addRequestProperty之间的基本区别是:-
有关更多信息,请浏览谢谢。不知何故,我认为顺序对偏好很重要,但是,阅读文档后,我发现事实并非如此。如果媒体类型同样特定,例如application/xml和application/json,该怎么办。顺序重要吗?还是需要使用q值来设置首选项?
myUrlConnction.setRequestProperty("Accept", "text/html, text/*");