对于Vaadin10和Vaadin12我得到了相同的结果。spring版本是2.1.2
@RestController
@EnableAutoConfiguration
@SpringBootApplication
public class TestApplication {
@RequestMapping("/")
String home() {return "Hello World!";}
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
}
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.httpBasic().and().
.authorizeRequests().anyRequest().fullyAuthenticated();
http.httpBasic().and().logout()
.logoutRequestMatcher(new AntPathRequestMatcher("/logout")).logoutSuccessUrl("/")
.invalidateHttpSession(true).deleteCookies("JSESSIONID");
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
auth.inMemoryAuthentication().passwordEncoder(new BCryptPasswordEncoder()).withUser("thomas")
.password(encoder.encode("xxx")).roles("USER");
}
}
Dependeny:
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-spring-boot-starter</artifactId>
</dependency>
我期待以下结果
我调用localhost:xxx/=>浏览器询问用户名/密码
我调用localhost:xxx/logout=>浏览器不问密码!
问题是您使用的是基本身份验证,它并不真正支持注销。在每个请求中,浏览器发送用户名/密码,因此用户在注销后立即重新登录。
解决这个问题的一种方法是将身份验证更改为form,并提供一个带有表单的页面,用户可以在其中提交登录凭据。
http.formLogin().loginPage("/login").permitAll()
在/login
中,您应该提供一个带有
主类: 测试代码: servlet发送了一个200状态代码,但测试结果显示状态为404 看来MockMvc在spring boot不能用来测试servlet
问题内容: 我有一个通用的抽象模板类。我以为如果创建特定于类型的生产者,则可以直接在通用类中注入一些DAO服务。但是我不能。 为什么?我该如何解决? 当我注入一个例如它完美地工作。但是没有泛型… 问题答案: 当您要求 容器知道您要一个类型为的bean 。如果存在这样的bean并且其类型信息已知,则容器可以满足注入。例如,类型信息保留在带注释的方法中 容器使用反射来检索该参数化的类型,并将其与请求的
当我编写一些spring代码时,我使用了带有class和annotation-config的Spring4。我已经声明一个bean将接口实现为组件。我正在尝试制作另一个bean来依赖于它的接口时间。但它不起作用,因为spring抛出一个错误,在该名称中找不到bean。我想这可能是因为只靠和实体类的自动电线工作,但我不知道为什么它会这样设置?有人能解释为什么依赖注释不允许类型自动连接到接口吗? 简单
问题内容: 答案可能很简单:如何在Spring Security中手动注销当前登录的用户: ? 问题答案: 在Servlet 3.0容器中,Spring注销功能与Servlet集成在一起,你只需在上调用。仍然需要编写有效的响应内容。 根据文档(Spring 3.2): HttpServletRequest.logout()方法可用于注销当前用户。 通常,这意味着将清除SecurityContext
我需要在spring boot data rest api中启用全局CORS,以防止在从浏览器调用api时出现以下错误:http://localhost:8090/posts?user-id=1。请求的资源上没有“访问-控制-允许-来源”标头。因此,不允许访问源“http://localhost”。“ 我可以在a浏览器中键入url并接收该资源的正确get响应,但我不能从网页中的ajax调用中发出相
我在集群的ubuntu节点上设置了一个kafka 0.11.0.0实例。直到几周前,一切都正常工作,今天我尝试启动它,在启动后出现以下错误: 我的服务器。特性: 我编辑了广告。侦听器,因为存在将请求重定向到代理的代理。无论如何,直到几周前一切都很好。。。 我开始Kafka的步骤: 有什么建议吗?谢谢你们