Java:
Å sende en HTTP-forespørsel
Hvordan gjøre det:
Her er en kjapp kodesnutt for å sende en GET-forespørsel og skrive ut responsen med Java 11 HttpClient
:
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class HttpExample {
public static void main(String[] args) {
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://httpbin.org/get"))
.build();
client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
.thenApply(HttpResponse::body)
.thenAccept(System.out::println)
.join();
}
}
Kjører du dette, vil du se utdata som:
{
"args": {},
"headers": {
"Accept-Encoding": "gzip,deflate",
...
},
"origin": "xxx.xxx.xxx.xxx",
"url": "https://httpbin.org/get"
}
Dypdykk
Før Java 11, var det HttpURLConnection
som gjaldt. Det var greit nok, men Java 11 introduserte HttpClient
, som er lettere å bruke og mer moderne.
Alternativer til Java-standardbiblioteket inkluderer biblioteker som Apache HttpClient, OkHttp, og Retrofit, alle som tilbyr mer funksjonalitet og fleksibilitet.
Når du sender en HTTP-forespørsel, bygger HttpClient
en request som kan være av type GET, POST, og andre HTTP-metoder. Dette går over nettverket til en server, som behandler forespørselen og sender tilbake et svar.
Se Også
For mer om Java HttpClient
:
- Offisiell Java 11 HttpClient dokumentasjon
- For biblioteker med ekstra kraft, sjekk ut: