Java 教程

Java 控制語句

面向物件程式設計

Java 內建類

Java 檔案處理

Java 錯誤和異常

Java 多執行緒

Java 同步

Java 網路程式設計

Java 集合

Java 介面

Java 資料結構

Java 集合演算法

高階 Java

Java 雜項

Java API 和框架

Java 類參考

Java 有用資源

Java - HttpURLConnection getHeaderField(int n) 方法



Java HttpURLConnection getHeaderField(int n) 方法返回第 n 個報頭欄位的值。如果欄位數少於 n+1,則返回 null。此方法可以與 getHeaderFieldKey 方法結合使用,以迭代訊息中的所有報頭。

某些實現可能會將第 0 個報頭欄位視為特殊欄位,即 HTTP 伺服器返回的狀態行。

宣告

以下是 java.net.HttpURLConnection.getHeaderField(int n) 方法的宣告

public String getHeaderField(int n)

引數

n - 一個索引,其中 n>=0

返回值

第 n 個報頭欄位的值,如果該值不存在則返回 null。

異常

示例 1

以下示例演示瞭如何使用 Java HttpURLConnection getHeaderField(int n) 方法處理使用 https 協議的有效 url。在此示例中,我們建立了一個 URL 類的例項。使用 url.openConnection() 方法,我們獲取了 HttpURLConnection 例項。使用 getHeaderField(),我們獲取 HttpURLConnection 例項的所有報頭欄位的值並列印它們 -

package com.tutorialspoint;

import java.io.IOException;
import java.net.URL;
import java.net.HttpURLConnection;

public class HttpUrlConnectionDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.tw");
         HttpURLConnection urlConnection = (HttpURLConnection)url.openConnection();
         for (int i = 0;; i++) {
            String headerName = urlConnection.getHeaderFieldKey(i);
            String headerValue = urlConnection.getHeaderField(i);
            if (headerName == null && headerValue == null) {
               break;
            }
            System.out.println(headerName + ":" + headerValue);
         }
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

讓我們編譯並執行上述程式,這將產生以下結果 -

輸出

null:HTTP/1.1 200 OK
Access-Control-Allow-Origin:*
Access-Control-Allow-Origin:*;
Age:474228
Cache-Control:max-age=2592000
Content-Type:text/html; charset=UTF-8
Date:Tue, 12 Dec 2023 07:43:22 GMT
Expires:Thu, 11 Jan 2024 07:43:22 GMT
Last-Modified:Wed, 06 Dec 2023 19:59:35 GMT
Server:ECAcc (ndl/D383)
Vary:Accept-Encoding
X-Cache:HIT
X-Frame-Options:SAMEORIGIN
X-Version:OCT-10 V1
X-XSS-Protection:1; mode=block
Content-Length:293827

示例 2

以下示例演示瞭如何使用 Java HttpURLConnection getHeaderField(int n) 方法處理使用 http 協議的有效 url。在此示例中,我們建立了一個 URL 類的例項。使用 url.openConnection() 方法,我們獲取了 HttpURLConnection 例項。使用 getHeaderField(),我們獲取 HttpURLConnection 例項的所有報頭欄位的值並列印它們 -

package com.tutorialspoint;

import java.io.IOException;
import java.net.URL;
import java.net.HttpURLConnection;

public class HttpUrlConnectionDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.tw");
         HttpURLConnection urlConnection = (HttpURLConnection)url.openConnection();
         for (int i = 0;; i++) {
            String headerName = urlConnection.getHeaderFieldKey(i);
            String headerValue = urlConnection.getHeaderField(i);
            if (headerName == null && headerValue == null) {
               break;
            }
            System.out.println(headerName + ":" + headerValue);
         }
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

讓我們編譯並執行上述程式,這將產生以下結果 -

輸出

null:HTTP/1.1 200 OK
Access-Control-Allow-Origin:*
Access-Control-Allow-Origin:*;
Age:474246
Cache-Control:max-age=2592000
Content-Type:text/html; charset=UTF-8
Date:Tue, 12 Dec 2023 07:43:40 GMT
Expires:Thu, 11 Jan 2024 07:43:40 GMT
Last-Modified:Wed, 06 Dec 2023 19:59:35 GMT
Server:ECAcc (ndl/D383)
Vary:Accept-Encoding
X-Cache:HIT
X-Frame-Options:SAMEORIGIN
X-Version:OCT-10 V1
X-XSS-Protection:1; mode=block
Content-Length:293827

示例 3

以下示例演示瞭如何使用 Java HttpURLConnection getHeaderField(int n) 方法處理使用 http 協議的有效 url。在此示例中,我們建立了一個 URL 類的例項。使用 url.openConnection() 方法,我們獲取了 HttpURLConnection 例項。使用 getHeaderField(),我們獲取 HttpURLConnection 例項的所有報頭欄位的值並列印它們 -

package com.tutorialspoint;

import java.io.IOException;
import java.net.URL;
import java.net.HttpURLConnection;
import java.time.Instant;
import java.util.Date;

public class HttpUrlConnectionDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("http://www.google.com");
         HttpURLConnection urlConnection = (HttpURLConnection)url.openConnection();
         for (int i = 0;; i++) {
            String headerName = urlConnection.getHeaderFieldKey(i);
            String headerValue = urlConnection.getHeaderField(i);
            if (headerName == null && headerValue == null) {
               break;
            }
            System.out.println(headerName + ":" + headerValue);
         }
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

讓我們編譯並執行上述程式,這將產生以下結果 -

輸出

null:HTTP/1.1 200 OK
Date:Tue, 12 Dec 2023 07:44:09 GMT
Expires:-1
Cache-Control:private, max-age=0
Content-Type:text/html; charset=ISO-8859-1
Content-Security-Policy-Report-Only:object-src 'none';base-uri ....
P3P:CP="This is not a P3P policy! See g.co/p3phelp for more info."
Server:gws
X-XSS-Protection:0
X-Frame-Options:SAMEORIGIN
Set-Cookie:1P_JAR=2023-12-12-07; expires=Thu, 11-Jan-2024 07:44:09 GMT; path=/; domain=.google.com; Secure
Set-Cookie:AEC=Ackid1TQ1UjoW7ZRamWdvJefD-8-ytjYuS3JJGCMn-....HttpOnly; SameSite=lax
Set-Cookie:NID=511=Omiszvcv0SRyZB_RDetfCXkayScJzjG...
Accept-Ranges:none
Vary:Accept-Encoding
Transfer-Encoding:chunked
java_httpurlconnection.htm
廣告