Есть у меня такой url:
bookManag/book?name=world and war #2&field=1
передаю в параметре name - world and war #2 проблема в том, что после # всё обрезается и следующий параметр field не приходит. Хорошо, я нашёл как выйти из этой ситуации и заменил решётку на %23
bookManag/book?name=world and war %232&field=1
Но основная проблема не в этом, пытаюсь получить ответ через ResponseEntity
String url = "http://localhost:8081/bookManag/book?name=world and war %232&field=1";
org.springframework.http.ResponseEntity result = restTemplate.exchange(url, HttpMethod.GET, entity, getRespType(), params);
После и происходит ошибка уже внутри спринга, вместо моего правильного url, spring его переделывает в
"http://localhost:8081/bookManag/book?name=world and war %20%25232&field=1"
заменяя %23 на %2523, что в итоге дает не правильный результат. Как исправить эту проблему?
Для кодирования URL надо использовать URLEncoder, в частности его метод encode Вам достаточно прогнать через encode только часть URL-а c решеткой
String url = "http://localhost:8081/bookManag/book?name=" + URLEncoder.encode("world and war #2", "UTF-8") + "&field=1";
В результате у Вас получится строка вида http://localhost:8081/bookManag/book?name=world+and+war+%232&field=1
, которая вполне себе валидный URL
Виртуальный выделенный сервер (VDS) становится отличным выбором
Кто может поделитесь простым примером, как вы отправляете информативное сообщение, в случае обработки запроса ajax, когда нужно вернуть ошибку
Вот весь код, который задействован
Есть кастомный адаптер для лист вью в который добавляются сообщенияПоследовательность сообщений идет сверху вниз