Я предоставил REST API (GET). Он будет принимать относительный URI и базовый URI в качестве входных данных и перенаправляться на обработанный URI.
Как мне пройти этот относительный или базовый? lativeURI может иметь специальные символы, такие как «&»
Я могу пойти с POST-запросом с URI в теле, но я бы префект GET-запрос.
Это могут быть любительские подходы
Подход 1: Использование @RequestParam
@RequestParam StringlativeURI, @RequestParam String baseURI
Но проблема в том, что относительно URI есть такие символы, как &, которые необходимо кодировать перед передачей в REST API
Подход 2: Использование @PathVariable
@PathVariable в API REST для относительного URI и базового URI как @RequestParam. Но это будет игнорировать дополнительные переменные пути
Approach1:
@GetMapping("app/DeviceResolution/")public void getPrefix(@RequestParam(value= "baseURI",required=false) String baseURI, @RequestParam("relativeURI") String relativeURI,HttpServletResponse response )
{
//processing
response.sendRedirect(finalURI);
}
Approach2:
@GetMapping("app/DeviceResolution/{relativeURI}")public void getPrefix(@RequestParam(value= "baseURI",required=false) String baseURI, @PathVariable String relativeURI,HttpServletResponse response )
{
//processing
response.sendRedirect(finalURI);
}
GET API -> app / DeviceResolution
lativeURI -> new / category & sub & banner.png
baseURI -> https://www.google.com/
finalURI -> https://www.google.com/processedData..../new/category&sub&banner.png