我正在尝试为我的REST API实现基本的Spring Security配置,并且用户名/密码提示出现在我已允许所有请求的页面上。
这是我的安全配置:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/", "/jobs").permitAll()
.anyRequest().authenticated()
.and()
.httpBasic();
}
localhost:8080 /和localhost:8080 / jobs应该可以访问,而无需登录。对其他路由的任何请求都需要身份验证。
现在,当在浏览器中打开root或/ jobs时,我得到了页面的内容,但是我也被要求登录。可以简单地关闭对话框,但这很烦人。
当我打开/ test或其他内容时,将出现登录对话框,但我没有得到内容,这是正确的行为。
在使用了allowtAll()的页面上,如何摆脱这些对话框?
这是当前情况的屏幕截图。内容已100%加载。 screenshot
编辑: 我找到了解决方案,这要感谢dur提到检查请求。问题是,firefox自动发送对favicon.ico文件的请求,不允许使用此路由,这就是为什么我得到提示的原因。
答案 0 :(得分:1)
我找到了解决方案,这要感谢dur提到检查请求。问题是,firefox自动发送了一个请求favicon.ico文件的请求,不允许使用此路由,这就是为什么我得到提示的原因。
在antMatchers()方法中添加“ /favicon.ico”后,一切正常。 screenshot