我是Spring安全性的新手,我正在尝试构建基于API的基于Spring安全性的示例示例,我使用Spring Boot创建项目。但是当我发送请求时,我收到以下错误: -
请求网址: -
http://localhost:8080/message
回应得到: -
{"timestamp":1505139451257,"status":401,"error":"Unauthorized","message":"Full authentication is required to access this resource","path":"/message"}
以下是我添加的代码: -
1]主类
@SpringBootApplication
@ComponentScan("com.srikss.controller")
public class SrikSsApplication {
public static void main(String[] args) {
SpringApplication.run(SrikSsApplication.class, args);
}
控制器: -
@RestController
public class HelloWorldController {
@RequestMapping(value="/message",method=RequestMethod.GET,headers="Accept=application/json")
public String messageLoad()
{
return "hello";
}
}
配置类: -
@Configuration
@EnableWebSecurity
public class SrikSSConfiguration extends WebSecurityConfigurerAdapter{
@Override
protected void configure(HttpSecurity httpsecurity) throws Exception
{
httpsecurity.authorizeRequests().anyRequest().permitAll().and()
.httpBasic();
httpsecurity.csrf().disable();
}
}
任何人都可以帮我弄清楚我在做错了什么。
提前致谢。
答案 0 :(得分:0)
终于找到了我做错的原因。 在此参考链接的帮助下: - https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-security.html
实际上spring boot定义了随机生成的默认密码,默认用户名是“user”。 我在application.properties文件中更新密码后获得了所需的结果,
security.user.password=aaa