복붙노트

[SPRING] Postman rest client에서 spring csrf 토큰을 보내려면 어떻게해야합니까?

SPRING

Postman rest client에서 spring csrf 토큰을 보내려면 어떻게해야합니까?

봄 프레임 워크에서 csrf 보호 기능이 있습니다. 그래서 각 요청에서 나는 완벽하게 작동하는 ajax 호출에서 헤더에 csrf 토큰을 보냅니다.

<meta name="_csrf" content="${_csrf.token}"/>
<meta name="_csrf_header" content="${_csrf.headerName}"/>

var token = $("meta[name='_csrf']").attr("content");
var header = $("meta[name='_csrf_header']").attr("content");

아약스에서

beforeSend: function(xhr) {
                xhr.setRequestHeader(header, token),
                xhr.setRequestHeader("username", "xxxx1"),
                xhr.setRequestHeader("password", "password")
            }

csrf 토큰을 생성하고 Postman Rest Client의 헤더 섹션에 포함시킬 생각이 없습니다. Postman Rest Client에서 csrf 토큰을 보내 주시겠습니까?

해결법

  1. ==============================

    1.이 작업을 일관되게 수행하는 가장 쉬운 방법이므로 매번 토큰을받을 필요가 없습니다.

    이 작업을 일관되게 수행하는 가장 쉬운 방법이므로 매번 토큰을받을 필요가 없습니다.

    참고 : PostMan Interceptor를 설치하고 활성화하여 브라우저 쿠키에 액세스 할 수 있어야합니다.

    편집하다     5.5.2 postman 이상을 사용하는 사용자는 쿠키를 해독해야하며 @Sacapuces가 지적한대로 쿠키를 얻을 수있는 다른 방법을 제공합니다

    pm.environment.set("xsrf-token", decodeURIComponent(pm.cookies.get("XSRF-TOKEN")))
    

    이제 xsrf-token이있는 환경 변수를 갖게됩니다.

  2. ==============================

    2.아래 단계에 따라 csrf 토큰과 함께 REST를 보낼 수 있습니다.

    아래 단계에 따라 csrf 토큰과 함께 REST를 보낼 수 있습니다.

  3. ==============================

    3.먼저 Postman Interceptor를 설치하고 브라우저의 쿠키에 액세스 할 수 있도록 활성화해야합니다.

    먼저 Postman Interceptor를 설치하고 브라우저의 쿠키에 액세스 할 수 있도록 활성화해야합니다.

  4. ==============================

    4.나를 위해 헤더에 X-CSRF-TOKEN을 추가하여 변형합니다.

    나를 위해 헤더에 X-CSRF-TOKEN을 추가하여 변형합니다.

  5. ==============================

    5.환경 변수 등을 설정하고 싶지 않다면 가장 빠른 해결책입니다.

    환경 변수 등을 설정하고 싶지 않다면 가장 빠른 해결책입니다.

    https://stackoverflow.com/a/49249850/3705478

  6. ==============================

    6.X-CSRF-Token을 키로두고 FETCH를 GET 요청 헤더의 값으로 지정하고 응답 헤더에 토큰을 수신하십시오.

    X-CSRF-Token을 키로두고 FETCH를 GET 요청 헤더의 값으로 지정하고 응답 헤더에 토큰을 수신하십시오.

  7. from https://stackoverflow.com/questions/27182701/how-do-i-send-spring-csrf-token-from-postman-rest-client by cc-by-sa and MIT license