对于最新的稳定版本,请使用 Spring Security 7.0.4spring-doc.cadn.net.cn

基于表单的身份验证测试

您可以轻松创建请求,以使用 Spring Security 的测试支持来测试基于表单的身份验证。 例如,以下 formLogin RequestPostProcessor 将向 "/login" 提交一个 POST 请求,包含用户名 "user"、密码 "password" 以及有效的 CSRF Tokens:spring-doc.cadn.net.cn

mvc
	.perform(formLogin())
mvc
	.perform(formLogin())

很容易自定义请求。 例如,以下内容将向 "/auth" 发送一个 POST 请求,并携带用户名 "admin"、密码 "pass" 以及有效的 CSRF Tokens:spring-doc.cadn.net.cn

mvc
	.perform(formLogin("/auth").user("admin").password("pass"))
mvc
    .perform(formLogin("/auth").user("admin").password("pass"))

我们也可以自定义用户名和密码所包含的参数名称。 例如,这是上面的请求修改为将用户名放在HTTP参数“u”中,将密码放在HTTP参数“p”中的示例。spring-doc.cadn.net.cn

mvc
	.perform(formLogin("/auth").user("u","admin").password("p","pass"))
mvc
    .perform(formLogin("/auth").user("u","admin").password("p","pass"))