文档here表示setRequestProperty
设置了一般请求属性。
假设我有以下代码段显示setRequestProperty
的用法,如下所示:
URL url = new URL(requestUrl);
URLConnection urlConn = url.openConnection();
urlConn.setRequestProperty("accept", "application/json");
urlConn.setRequestProperty("datetime", dateTimeString);
urlConn.setRequestProperty("authorization", authorization);
urlConn.setUseCaches(false);
urlConn.setDoInput(true); // Triggers POST
Q1:accept
是否需要大写A
?同样,对于authorization
,是否还需要大写A
?我问这个的原因是因为我看过许多人使用authorization
的帖子,例如conn.setRequestProperty ("Authorization", "Basic " + encodedString);
。这显示为here。
Q2。由于我上面定义了很多setRequestProperty
属性,这是否意味着,URL包含所有这些属性?除了我上面使用的那个之外,还有其他属性存在吗?
答案 0 :(得分:3)
A1:HTTP头字段,包括通用头(第4.5节),请求头(第5.3节),响应头(第6.2节)和实体头(第7.1节)字段,遵循相同的通用格式正如RFC 822 [9]第3.1节中给出的那样。每个标题字段由一个名称后跟一个冒号(“:”)和字段值组成。 字段名称不区分大小写。
A2:这些变量将在HTTP请求标头中。如果您希望URL包含这些参数,则需要将它们附加到URL:
http://www.google.com?bar=far&boo=foo