Общее использование перехватчиков - применение универсальных функций к контроллерам. То есть данные по умолчанию, показанные на всех страницах, безопасность и т. д. Вы хотите использовать их для единой функциональности, которую вы вообще не должны делать.
То, что вы пытаетесь достичь, невозможно с помощью перехватчика. Сначала определяется способ выполнения на основе данных отображения. Перед выполнением метода выполняется перехватчик. В этом вы в основном хотите изменить входящий запрос и выполнить другой метод. Но метод уже выбран, поэтому он не будет работать.
Поскольку вы в конечном итоге захотите вызвать тот же метод, просто добавьте другой метод обработки запросов, который либо в итоге вызовет addAttribute
, либо просто перенаправит на URL с UUID.
@RequestMapping("<your-url>")
public ResponseEntity<?> addAttributeAlternate(@RequestParam("secret") String secret, HttpServletRequest request, HttpServletResponse response) {
String uuid = // determine UUID based on request
return this.addAttribute(uuid,request,response);
}