Heim >Java >javaLernprogramm >Senden Sie eine HTTP-Anfrage und verarbeiten Sie die Antwort mit HttpClient in Java 11

Senden Sie eine HTTP-Anfrage und verarbeiten Sie die Antwort mit HttpClient in Java 11

PHPz
PHPzOriginal
2023-08-01 11:48:241792Durchsuche

Titel: Senden Sie HTTP-Anfragen und verarbeiten Sie Antworten mit HttpClient in Java 11

Zitat:
In modernen Internetanwendungen ist die HTTP-Kommunikation mit anderen Servern eine sehr häufige Aufgabe. Java bietet einige integrierte Tools, die uns dabei helfen können, dieses Ziel zu erreichen. Das neueste und empfohlene unter ihnen ist die in Java 11 eingeführte HttpClient-Klasse. In diesem Artikel wird die Verwendung von HttpClient in Java 11 zum Senden von HTTP-Anfragen und Verarbeiten von Antworten vorgestellt, um den Lesern zu helfen, dieses leistungsstarke Tool besser zu verstehen und zu beherrschen.

  1. HttpClient-Objekt erstellen
    Um die HttpClient-Klasse zum Senden von HTTP-Anfragen zu verwenden, müssen Sie zunächst ein HttpClient-Objekt erstellen. HttpClient ist eine threadsichere Klasse, die in verschiedenen Teilen der Anwendung gemeinsam genutzt und wiederverwendet werden kann. Hier ist ein Beispielcode zum Erstellen eines HttpClient-Objekts:
import java.net.http.HttpClient;

public class Main {
    public static void main(String[] args) {
        HttpClient httpClient = HttpClient.newHttpClient();
        
        // TODO: 发送HTTP请求并处理响应
    }
}
  1. Senden einer GET-Anfrage
    Das Senden einer HTTP-GET-Anfrage ist der grundlegendste Vorgang. Hier ist ein Beispiel für das Senden einer GET-Anfrage und das Verarbeiten der Antwort:
import java.net.URI;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpHeaders;

public class Main {
    public static void main(String[] args) {
        HttpClient httpClient = HttpClient.newHttpClient();
        
        HttpRequest httpRequest = HttpRequest.newBuilder()
            .uri(URI.create("http://api.example.com/data"))
            .GET()
            .build();
        
        try {
            HttpResponse<String> httpResponse = httpClient.send(httpRequest, HttpResponse.BodyHandlers.ofString());
            
            int statusCode = httpResponse.statusCode();
            HttpHeaders headers = httpResponse.headers();
            String body = httpResponse.body();
            
            System.out.println("Response Code: " + statusCode);
            System.out.println("Response Headers: " + headers);
            System.out.println("Response Body: " + body);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
  1. Senden einer POST-Anfrage
    Außer zum Senden einer GET-Anfrage können wir auch eine POST-Anfrage senden und den Anfragetext übergeben. Hier ist ein Beispiel für das Senden einer POST-Anfrage und die Verarbeitung der Antwort:
import java.net.URI;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpHeaders;
import java.net.http.HttpRequest.BodyPublishers;

public class Main {
    public static void main(String[] args) {
        HttpClient httpClient = HttpClient.newHttpClient();
        
        String requestBody = "username=admin&password=123456";
        
        HttpRequest httpRequest = HttpRequest.newBuilder()
            .uri(URI.create("http://api.example.com/login"))
            .header("Content-Type", "application/x-www-form-urlencoded")
            .POST(BodyPublishers.ofString(requestBody))
            .build();
        
        try {
            HttpResponse<String> httpResponse = httpClient.send(httpRequest, HttpResponse.BodyHandlers.ofString());
            
            int statusCode = httpResponse.statusCode();
            HttpHeaders headers = httpResponse.headers();
            String body = httpResponse.body();
            
            System.out.println("Response Code: " + statusCode);
            System.out.println("Response Headers: " + headers);
            System.out.println("Response Body: " + body);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Fazit:
In diesem Artikel wird erläutert, wie Sie eine HTTP-Anfrage senden und die Antwort mithilfe der HttpClient-Klasse in Java 11 verarbeiten. Anhand des Beispielcodes können wir sehen, dass die HttpClient-Klasse eine sehr übersichtliche und praktische API für die Kommunikation mit anderen Servern bereitstellt. Leser können andere Funktionen der HttpClient-Klasse kombinieren, um eine komplexere HTTP-Anforderungs- und Antwortverarbeitung entsprechend ihren spezifischen Anforderungen zu implementieren. Ich hoffe, dass dieser Artikel den Lesern helfen kann, die HttpClient-Klasse in Java 11 besser zu erlernen und anzuwenden.

Das obige ist der detaillierte Inhalt vonSenden Sie eine HTTP-Anfrage und verarbeiten Sie die Antwort mit HttpClient in Java 11. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn