Мне нужно вызвать URL-адрес со стороны клиента (JS) с зашифрованным параметром.Затем мне нужно расшифровать URL-адрес от контроллера на стороне сервера, к которому он идет.
Предположим, у меня есть window.location.href = "/app/submitted?docId=445";
Мне нужно зашифровать часть docId=445
.Я мог бы использовать atob/btoa
как
window.location.href = "/app/submitted?" + atob("docId=445"); // Whole Param
window.location.href = "/app/submitted?docId=" + atob("445"); // Just the value
Я бы предпочел # 1, но в обоих случаях, когда я прихожу к своему контроллеру SpringMVC, как я могу получить и расшифровать этот параметр?Существует ли Java-шифрование, эквивалентное atob/btoa
?
@GetMapping("/app/submitted")
public ModelAndView submitted(HttpServletRequest request, HttpServletResponse response,
@RequestParam("docId") Integer docId) {
//...
// How to decrypt here (either whole param or just the value) from an atob/btoa?
}
Или я должен использовать здесь шифрование, а не шифрование, чтобы гарантировать эквивалентность на обоих уровнях?Моя цель - не показывать идентификатор в адресной строке.