Java Tutorial

Java Control Statements

Object Oriented Programming

Java Built-in Classes

Java File Handling

Java Error & Exceptions

Java Multithreading

Java Synchronization

Java Networking

Java Collections

Java List Interface

Java Queue Interface

Java Map Interface

Java Set Interface

Java Data Structures

Java Collections Algorithms

Advanced Java

Java Miscellaneous

Java APIs & Frameworks

Java Useful Resources

Java - HttpURLConnection getHeaderField(int n) Method



The Java HttpURLConnection getHeaderField(int n) method returns the value for the nth header field. It returns null if there are fewer than n+1 fields. This method can be used in conjunction with the getHeaderFieldKey method to iterate through all the headers in the message.

Some implementations may treat the 0th header field as special, i.e. as the status line returned by the HTTP server.

Declaration

Following is the declaration for java.net.HttpURLConnection.getHeaderField(int n) method

public String getHeaderField(int n)

Parameters

n − an index, where n>=0

Return Value

the value of the nth header field or null if the value does not exist.

Exception

NA

Example 1

The following example shows the usage of Java HttpURLConnection getHeaderField(int n) method for a valid url with https protocol. In this example, we're creating an instance of URL class. Using url.openConnection() method, we're getting the HttpURLConnection instance. Using getHeaderField(), we're getting the value of all header fields of HttpURLConnection instance and printing the same −

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://www.tutorialspoint.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();
      }
   }
}

Let us compile and run the above program, this will produce the following result −

Output

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

Example 2

The following example shows the usage of Java HttpURLConnection getHeaderField(int n) method for a valid url with http protocol. In this example, we're creating an instance of URL class. Using url.openConnection() method, we're getting the HttpURLConnection instance. Using getHeaderField(), we're getting the value of all header fields of HttpURLConnection instance and printing the same −

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://www.tutorialspoint.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();
      }
   }
}

Let us compile and run the above program, this will produce the following result −

Output

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

Example 3

The following example shows the usage of Java HttpURLConnection getHeaderField(int n) method for a valid url with http protocol. In this example, we're creating an instance of URL class. Using url.openConnection() method, we're getting the HttpURLConnection instance. Using getHeaderField(), we're getting the value of all header fields of HttpURLConnection instance and printing the same −

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();
      }
   }
}

Let us compile and run the above program, this will produce the following result −

Output

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
Advertisements