Hallo liebe Community,
ich verwende derzeit den Java9 HTTP Client, um einen Query an die GEOApify API zu senden
um Straßennamen abzufragen.
Das Problem ist, dass wenn im Suchbegriff ein Leerzeichen sich befindet, er mir folgende Exception wirft:
Mein HTTP Client Code sieht folgendermaßen aus:
Ich habe den Link jeweils immer gekürzt weil er sonst sehr lang wäre und mein API-Schlüssel zu sehen wäre.
Leider findet man im Internet nicht sehr viel über diesen Client und ich habe auch schon Versucht den HTTPRequest über den Header
mit UTF-8 zu kodieren aber leider bringt das nichts.
Vielleicht kennt sich jemand mit diesem Client aus
Wie immer Danke im Voraus
ich verwende derzeit den Java9 HTTP Client, um einen Query an die GEOApify API zu senden
um Straßennamen abzufragen.
Das Problem ist, dass wenn im Suchbegriff ein Leerzeichen sich befindet, er mir folgende Exception wirft:
Java:
Illegal character in query at index 62: https://api.geoapify.com/v1/geocode/autocomplete?text=berliner straße....
Mein HTTP Client Code sieht folgendermaßen aus:
Code:
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.geoapify.com/v1/geocode/autocomplete?text=" + search + "&lang=de&..."))
.header("Content-Type", "application/json;charset=UTF-8")
.build();
try {
HttpResponse<String> response = client.send(request, BodyHandlers.ofString());
JSONObject jsonObj = new JSONObject(response.body());
JSONArray arrObj = jsonObj.optJSONArray("results");
...
Ich habe den Link jeweils immer gekürzt weil er sonst sehr lang wäre und mein API-Schlüssel zu sehen wäre.
Leider findet man im Internet nicht sehr viel über diesen Client und ich habe auch schon Versucht den HTTPRequest über den Header
mit UTF-8 zu kodieren aber leider bringt das nichts.
Vielleicht kennt sich jemand mit diesem Client aus
Wie immer Danke im Voraus