测试基于表单的身份验证
你可以轻松地利用 Spring Security 的测试支持来创建请求,以测试基于表单的身份验证。例如,下面的 formLogin RequestPostProcessor 将向 "/login" 提交一个 POST 请求,其中包含用户名 "user"、密码 "password" 以及一个有效的 CSRF 令牌:
- Java
- Kotlin
mvc
.perform(formLogin())
mvc
.perform(formLogin())
自定义请求非常简单。例如,以下代码将向 "/auth" 提交一个 POST 请求,其中包含用户名 "admin"、密码 "pass" 以及一个有效的 CSRF 令牌:
- Java
- Kotlin
mvc
.perform(formLogin("/auth").user("admin").password("pass"))
mvc
.perform(formLogin("/auth").user("admin").password("pass"))
我们也可以自定义包含用户名和密码的参数名称。例如,这是修改后的上述请求,将用户名包含在HTTP参数"u"中,密码包含在HTTP参数"p"中。
- Java
- Kotlin
mvc
.perform(formLogin("/auth").user("u","admin").password("p","pass"))
mvc
.perform(formLogin("/auth").user("u","admin").password("p","pass"))