Этот вопрос уже имеет ответ здесь:
В моем контроллере я делаю проверку полномочий, чтобы видеть, может ли пользователь сделать определенные действия. Если бы они не могут, я хотеть возвратить 404.
Как я говорю Spring возвращать 404?
Вы можете вызвать исключение и обработать его методом уровня контроллера:
@Controller
public class MyController {
@ResponseStatus(NOT_FOUND)
@ExceptionHandler({UnauthorizedException.class})
public void handle() {
// ...
}
}
Если какой-либо метод контроллера вызывает исключение UnauthorizedException.
, вышеупомянутый метод обработчика будет вызван для его обработки и возврата ошибки 404.
Вы можете вывести свое исключение из HttpException и передать код 404 в базовый конструктор:
public class MyNotFoundException : HttpException
{
public MyNotFoundException(string message, Exception inner)
: base(404, message, inner)
{
}
}