RT,因为需要为/oauth/authorize开启formLogin,但是在开启之后发现访问接口在未授权时会返回请求码200,并且返回登陆页面,但是这很明显不是我们想要的,请问应该如何处理?
RT,因为需要为/oauth/authorize开启formLogin,但是在开启之后发现访问接口在未授权时会返回请求码200,并且返回登陆页面,但是这很明显不是我们想要的,请问应该如何处理?
其实我依然有一点不太明白,api/**
这些的返回值是由mvc
决定的。仅仅说认证和授权,如果你是想说失败后返回json
而不是跳转。如果是认证失败 ,比如密码错误等,就配置login
的 .failureHandler()
。如果是权限不够(.accessDeniedHandler
)或者未认证(.authenticationEntryPoint
),就配置exceptionHandling()
。由自己接管定义如何返回,即楼上所说,楼上有图,我就不截了。
4 回答1.8k 阅读✓ 已解决
4 回答1.5k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
4 回答2.4k 阅读
2 回答844 阅读✓ 已解决
2 回答1.4k 阅读
spring security
未登录
或登录
状态访问无权限资源都会出现访问异常,这个异常由ExceptionTranslationFilter
处理,其中:AuthenticationEntryPoint
处理,其中重定向至Login页面操作也是个EntryPoint:LoginUrlAuthenticationEntryPoint
,他专为formLogin做跳转你可以自定义实现
AuthenticationEntryPoint
覆盖他AccessDeniedHandler
处理,同样可以自定义实现并配置