我们在Spring MVC REST-ish应用程序中使用Apache Shiro;对于我们的API,返回HTTP状态401(或419)而不是重定向到另一个URL更有意义;我一直在看文档,但看不出怎么做。
有人知道怎么做吗?是否有要在ShiroFilterFactoryBean中配置的属性?
答案 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