Apache shiro,返回状态401而不是重定向到url

时间:2015-08-18 15:39:13

标签: spring-mvc shiro

我们在Spring MVC REST-ish应用程序中使用Apache Shiro;对于我们的API,返回HTTP状态401(或419)而不是重定向到另一个URL更有意义;我一直在看文档,但看不出怎么做。

有人知道怎么做吗?是否有要在ShiroFilterFactoryBean中配置的属性?

1 个答案:

答案 0 :(得分:3)

有时会通过CORS策略阻止重定向方法。我的解决方案是自定义AuthenticatingFilter,例如:

public class MyAuthenticationFilter extends FormAuthenticationFilter {
    @Override
    protected boolean onAccessDenied(ServletRequest request, ServletResponse response)
        throws Exception {
            WebUtils.toHttp(response).sendError(HttpServletResponse.SC_UNAUTHORIZED);
            return false;
    }
}

您可以查看此AuthorizationFilter.java