Jak zakodować parametry zapytania, aby przejść do adresu URL w Javie? Wiem, to wydaje się oczywiste i już zadane pytanie.
Są dwie subtelności, których nie jestem pewien:
- Czy spacje powinny być zakodowane w adresie URL jako „+” czy „% 20”? W chrome, jeśli wpiszę „http://google.com/foo=?bar me”, chrome zmieni go na kodowanie z% 20
- Czy konieczne / poprawne jest kodowanie dwukropków „:” jako% 3B? Chrome tego nie robi.
Uwagi:
java.net.URLEncoder.encode
wygląda na to, że nie działa, wydaje się, że kodowanie danych ma być przesłane do formularza. Na przykład koduje spację jako+
zamiast%20
i koduje dwukropek, który nie jest konieczny.java.net.URI
nie koduje parametrów zapytania
application/x-www-form-urlencoded
par klucz / wartość. Zobacz tutaj, aby uzyskać więcej: nielegalneargumentexception.blogspot.com/2009/12/…