Spring Security:Java Config:如何添加方法类型?

DaU*_*ser 13 java spring config spring-security

我正在使用Spring Securitys Java Config.

想要翻译以下XML:

<intercept-url pattern="/login" access="permitAll" method="POST" />
Run Code Online (Sandbox Code Playgroud)

使用Java Config:

http.authorizeUrls().antMatchers("/login").permitAll();
Run Code Online (Sandbox Code Playgroud)

但有一个问题是:

我仍然可以在浏览器中使用"/ login"并执行GET-Request.但我只想通过POST访问url.

Quesion:

如何将这个>> method ="POST"<<添加到java配置?

Pau*_*nis 30

如果你查看antMatchers方法的文档,你会看到HttpMethod的枚举可以作为第一个参数传递.

所以像这样的东西应该工作:

http.authorizeUrls().antMatchers(HttpMethod.POST, "/login").permitAll();
Run Code Online (Sandbox Code Playgroud)

  • 你知道如何添加允许的POST和GET端点吗?因为调用:`.antMatchers(HttpMethod.POST,"/ login").permitAll().antMatchers(HttpMethod.GET,"/ some-other").permitAll()`不起作用.POST到/ login似乎被覆盖,因为我得到了403. (2认同)