Java 教程

Java 控制語句

面向物件程式設計

Java 內建類

Java 檔案處理

Java 錯誤與異常

Java 多執行緒

Java 同步

Java 網路程式設計

Java 集合

Java 介面

Java 資料結構

Java 集合演算法

高階 Java

Java 雜項

Java APIs 和框架

Java 類引用

Java 有用資源

Java - HttpURLConnection setRequestMethod() 方法



Java HttpURLConnection setRequestMethod() 方法設定 URL 請求的方法,其中之一為:

  • GET

  • POST

  • HEAD

  • OPTIONS

  • PUT

  • DELETE

  • TRACE

預設方法為 GET。

宣告

以下是 java.net.HttpURLConnection.setRequestMethod() 方法的宣告

public void setRequestMethod(String method) throws ProtocolException

引數

method − HTTP 方法

返回值

異常

ProtocolException − 如果方法無法重置或請求的方法對於 HTTP 無效。

SecurityException − 如果設定了安全管理器並且方法為“TRACE”,但未授予“allowHttpTrace” NetPermission。

示例 1

以下示例演示了使用 Java HttpURLConnection setRequestMethod() 方法處理使用 https 協議的有效 url。在此示例中,我們正在建立 URL 類的例項。使用 url.openConnection() 方法,我們獲得了 HttpURLConnection 例項。使用 getRequestMethod(),我們檢查請求方法的值並列印它。現在使用 setRequestMethod() 方法,我們更改請求方法的值並再次列印它。

package com.tutorialspoint;

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

public class HttpUrlConnectionDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.tw/index.htm?language=en#j2se");
         HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
        
         String result = urlConnection.getRequestMethod();
         System.out.println("request method: " + result);  

         urlConnection.setRequestMethod("POST");
         result = urlConnection.getRequestMethod();
         System.out.println("request method: " + result); 

      
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

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

輸出

request method: GET
request method: POST

示例 2

以下示例演示了使用 Java HttpURLConnection setRequestMethod() 方法處理使用 https 協議的有效 url。在此示例中,我們正在建立 URL 類的例項。使用 url.openConnection() 方法,我們獲得了 HttpURLConnection 例項。使用 getRequestMethod(),我們檢查請求方法的值並列印它。現在使用 setRequestMethod() 方法,我們更改請求方法的值並列印它。由於連線已建立,setRequestMethod() 將丟擲如下所示的異常:

package com.tutorialspoint;

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

public class HttpUrlConnectionDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.tw/index.htm?language=en#j2se");
         HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
         urlConnection.connect();  
         System.out.println("Connected.");  

         String result = urlConnection.getRequestMethod();
         System.out.println("request method: " + result);  

         urlConnection.setRequestMethod("POST");
         result = urlConnection.getRequestMethod();
         System.out.println("request method: " + result); 

         urlConnection.disconnect();
         System.out.println("Disconnected.");  
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

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

輸出

Connected.
request method: GET
Exception in thread "main" java.lang.IllegalStateException: connect in progress
	at sun.net.www.protocol.http.HttpURLConnection.setRequestMethod(Unknown Source)
	at com.tutorialspoint.HttpUrlConnectionDemo.main(HttpUrlConnectionDemo.java:18)

示例 3

以下示例演示了使用 Java HttpURLConnection setRequestMethod() 方法處理使用 http 協議的有效 url。在此示例中,我們正在建立 URL 類的例項。使用 url.openConnection() 方法,我們獲得了 HttpURLConnection 例項。使用 getRequestMethod(),我們檢查請求方法的值並列印它。現在使用 setRequestMethod() 方法,我們更改請求方法的值並再次列印它。

package com.tutorialspoint;

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

public class HttpUrlConnectionDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.tw/index.htm?language=en#j2se");
         HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
        
         String result = urlConnection.getRequestMethod();
         System.out.println("request method: " + result);  

         urlConnection.setRequestMethod("POST");
         result = urlConnection.getRequestMethod();
         System.out.println("request method: " + result); 

      
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

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

輸出

request method: GET
request method: POST
java_httpurlconnection.htm
廣告