Я создаю API-интерфейс Rest с загрузкой Spring и когда передаю запрос с помощью?? чтобы проверить метод get с параметром запроса "?" символ не закодирован.неправильная кодировка для "?" character in Rest api
Здесь вы найдете мой контроллер весны.
@RequestMapping(value = "/response/{query}", method = RequestMethod.GET,headers="Accept=application/json")
public QueryRep getResponse(@PathVariable("query") String query)
{
QueryRep test=new QueryRep();
System.out.println(query);
// code !!
return test;
}
Если я тестирую, например: как меня зовут? Я получаю следующий URL: http://localhost:8080/response/what%20is%20my%20name? и я получаю в своей консоли строку «какое мое имя» (без символа «?»). Как вы можете видеть "?" символ не кодируется как UTF-8% 3F, а maven (pom.xml) и IDE (STS) настроены на использование UTF-8. Я использую Tomcat как веб-сервер.
if '?' является допустимым признаком в URI, поэтому почему я не могу получить его в моем запросе, я просто задаю вопрос без?? , благодаря. – desmanda
ответ обновляется, чтобы предоставить более подробную информацию. – digitaljoel