文档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 回答
A1:HTTP头字段,包括通用头(第4.5节),请求头(第5.3节),响应头(第6.2节)和实体头(第7.1节)字段,遵循与给定的相同的通用格式在RFC 822 [3.1]的3.1节中 . 每个 Headers 字段由名称后跟冒号(":")和字段值组成 . Field names are case-insensitive .
A2:这些变量将在HTTP请求标头中 . 如果您希望URL包含这些参数,则需要将它们附加到URL上: