java中的setRequestProperty

时间:2014-07-28 23:22:51

标签: java httpurlconnection urlconnection

文档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包含所有这些属性?除了我上面使用的那个之外,还有其他属性存在吗?

1 个答案:

答案 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