Closed f1v3-dev closed 2 months ago
MockMvc๋ฅผ ์ฌ์ฉํ์ฌ ์์ฒญ์ ๋ณด๋์ ๊ฒฝ์ฐ, csrf ์ค์ ์ด ํ์ํ๋ค๋ ์๋ฌ๊ฐ ๋ฐ์ํ์์ต๋๋ค.
์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ฝ๋ ์์์ ์๋์ ๊ฐ์ด ์์ฒญ์, csrf๋ฅผ ํฌํจํ๋๋ก ํ์๋๋ฐ request param์ ๋ถ์ด ๋ณด๊ธฐ ๋ถํธํ๋ค๋ ๋ฌธ์ ๊ฐ ์กด์ฌํฉ๋๋ค.
@BeforeEach void setUp(WebApplicationContext context, RestDocumentationContextProvider restDocumentation) { this.mockMvc = MockMvcBuilders .webAppContextSetup(context) .apply(documentationConfiguration(restDocumentation)) .alwaysDo(MockMvcResultHandlers.print()) .alwaysDo(restDocs) .addFilters(new CharacterEncodingFilter("UTF-8", true)) .apply(springSecurity()) .defaultRequest(post("/**").with(csrf())) .defaultRequest(get("/**").with(csrf())) .defaultRequest(patch("/**").with(csrf())) .defaultRequest(delete("/**").with(csrf())) .build(); }
csrf์ ๋ํ ์ ๋ณด๋ฅผ ํค๋๋ก ๋ณด๋ด๋ ๋ฐฉ์์ผ๋ก ์์ ํ๋ ๊ฒ์ด ๋ ๊น๋ํ ๋ฌธ์ํ๋ฅผ ๋ง๋๋๋ฐ ๋์์ด ๋ ๊ฒ ๊ฐ์์!
https://onedaythreecoding.tistory.com/entry/RestDocs-Request-parameters-with-the-following-names-were-not-documented-csrf
๐ ๏ธ ์ด๋ค ๊ธฐ๋ฅ์ธ๊ฐ์?
MockMvc๋ฅผ ์ฌ์ฉํ์ฌ ์์ฒญ์ ๋ณด๋์ ๊ฒฝ์ฐ, csrf ์ค์ ์ด ํ์ํ๋ค๋ ์๋ฌ๊ฐ ๋ฐ์ํ์์ต๋๋ค.
์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ฝ๋ ์์์ ์๋์ ๊ฐ์ด ์์ฒญ์, csrf๋ฅผ ํฌํจํ๋๋ก ํ์๋๋ฐ request param์ ๋ถ์ด ๋ณด๊ธฐ ๋ถํธํ๋ค๋ ๋ฌธ์ ๊ฐ ์กด์ฌํฉ๋๋ค.
csrf์ ๋ํ ์ ๋ณด๋ฅผ ํค๋๋ก ๋ณด๋ด๋ ๋ฐฉ์์ผ๋ก ์์ ํ๋ ๊ฒ์ด ๋ ๊น๋ํ ๋ฌธ์ํ๋ฅผ ๋ง๋๋๋ฐ ๋์์ด ๋ ๊ฒ ๊ฐ์์!
๐๏ธ ์์ ์์ธ ๋ด์ฉ
๐ ์ฐธ๊ณ ํ ๋งํ ์๋ฃ
https://onedaythreecoding.tistory.com/entry/RestDocs-Request-parameters-with-the-following-names-were-not-documented-csrf