如何在deadbolt onAuthFailure中操纵响应状态

时间:2016-11-21 23:40:46

标签: java angularjs httpresponse deadbolt-2

我在我的playframewrok服务器应用程序中使用deadbolt库进行身份验证,该应用程序为其他前端应用程序保存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 个答案:

答案 0 :(得分:0)

这听起来更像是Angular本身发出的一个值。如果您在浏览器中使用开发人员工具,则应该看到传入的响应,它应该是401(未经授权的)。从这里开始,您应该能够找到处理此问题的Angular代码。

您还应该考虑根据主题是否存在来改变响应。如果有主题,则返回403;如果主题不存在,则返回401.