Как манипулировать статусом ответа в deadbolt onAuthFailure
Я использую библиотеку deadbolt для аутентификации в моем серверном приложении playframewrok, в котором хранится API-интерфейс для некоторых других приложений веб-интерфейса. В классе MyDeadboltHandler в методе onAuthFailure, когда пользователь не аутентифицирован, я хочу вернуть статус 403 со следующим фрагментом кода:
@Override
public F.Promise<Result> onAuthFailure(Http.Context context, String content) {
return F.Promise.pure(unauthorized("Authentication Failed"));
}
однако в моем приложении внешнего интерфейса (Angular 1.5) в моем обработчике ошибок я получаю ответ, который является некоторой общей ошибкой с кодом состояния ошибки -1 Как я могу изменить свой метод, чтобы получить нормальный статус ошибки 403 в ответе?
1 ответ
Это больше похоже на значение, исходящее от самого Angular. Если вы используете инструменты разработчика в своем браузере, вы должны увидеть входящий ответ, и он должен быть 401 (неавторизованным). Отсюда вы сможете найти код Angular, который имеет к этому отношение.
Вам также следует рассмотреть возможность изменения ответа в зависимости от того, присутствует ли субъект. Если предмет присутствует, верните 403; если предмета нет, верните 401.