Avatar ·

Kodierung von URL-Abfrageparametern in Java: Wie macht man es richtig?

Hallo zusammen! Ich bin ein Neuling in Java und schreibe eine kleine Anwendung, die HTTP-Requests an eine externe API sendet. Ich muss Parameter im Query-String übergeben, bin aber auf ein Problem gestoßen: Einige Parameter enthalten Sonderzeichen wie Leerzeichen, kyrillische Buchstaben, &, = usw.\n\nZum Beispiel ist einer der Parameter eine Suchanfrage: "Java & Spring Framework". Wenn ich ihn einfach in die URL einfüge, erhalte ich einen Fehler, weil das Zeichen '&' als Parametertrenner interpretiert wird.\n\nIch habe versucht, `URLEncoder.encode()` zu verwenden, aber die Ergebnisse sehen seltsam aus. Zum Beispiel wird ein Leerzeichen zu '+', nicht zu '%20'. Außerdem bin ich mir nicht sicher, ob ich die gesamte URL oder nur die Parameterwerte kodieren muss. Hier ist ein Beispiel meines Codes:\n\n```java\nString query = "Java & Spring Framework";