Apache CXF - кодировка остальных параметров URL
Я использую CXF - Rest
оказание услуг.
@GET
@Produces({"application/xml", "application/json"})
@Path("/search/")
R findUser(@QueryParam("email") String email);
Я призываю GET
позвонить с Postman
или же cURL
, что-то вроде этого
http://localhost:8080/rest-service/search/?email=test+1@gmail.com
Но когда я отлаживаю email
поле, я получаю поле данных как test 1@gmail.com
, Я думаю, где-то происходит декодирование URL и из-за этого +
исчезает? Как мне настроить CXF/ сервис на not to alter
параметры URL
1 ответ
Решение
Добавить @Encoded
аннотацию к вашему методу, которая отключит автоматическое декодирование параметров. Смотрите здесь
Отключает автоматическое декодирование значений параметров, связанных с использованием QueryParam, PathParam, FormParam или MatrixParam. Использование этой аннотации для метода отключит декодирование для всех параметров. Использование этой аннотации в классе отключит декодирование для всех параметров всех методов.