Akashic Records

REST API TEST "Postman"에서 로그인 후 JWT을 Header에 자동 등록하는 방법 본문

Library

REST API TEST "Postman"에서 로그인 후 JWT을 Header에 자동 등록하는 방법

Andrew's Akashic Records 2023. 4. 24. 16:15
728x90

Postman은 REST API 테스트를 위한 강력한 도구로, API 호출에 대한 테스트 및 디버깅을 쉽게 수행할 수 있게 해줍니다. JWT 토큰을 사용하는 API를 테스트할 때는, 로그인 후 JWT 토큰을 헤더에 자동으로 삽입하는 방법이 편리합니다. Postman에서 이 작업을 수행하는 방법은 다음과 같습니다.

로그인 요청 만들기: 먼저 로그인 API를 호출하는 요청을 만들고, 이를 통해 JWT 토큰을 받아옵니다. 일반적으로 이 요청은 POST 방식이며, 사용자 이름과 비밀번호를 포함합니다.

JWT 토큰 추출: 로그인 API 호출이 성공하면, 응답 본문에서 JWT 토큰을 추출해야 합니다. 이 작업을 자동화하기 위해 Postman의 "Tests" 탭에 스크립트를 작성할 수 있습니다. 다음과 같은 코드를 입력하세요:

if (pm.response.code === 200) {
    const jsonData = pm.response.json();
    const token = jsonData.access_token; // 'access_token'은 응답에서 JWT 토큰의 키입니다. 필요에 따라 변경하세요.
    pm.environment.set("jwt_token", token); // 환경 변수에 JWT 토큰 저장
}

Response Body(json)에서 토큰 추출

 

if (pm.response.code === 200) {
    const token = pm.response.headers.get('Authorization'); // 'Authorization'은 응답 헤더의 JWT 토큰을 포함하는 키입니다. 필요에 따라 변경하세요.
    pm.environment.set("jwt_token", token.replace('Bearer ', '')); // 환경 변수에 JWT 토큰 저장 (토큰 앞에 있는 'Bearer '를 제거한 후 저장)
}

Response Header에서 토큰 추출

 

이 스크립트는 로그인 API 호출이 성공적으로 완료되면, 응답에서 JWT 토큰을 추출하고 이를 환경 변수 jwt_token에 저장합니다.

환경 변수 설정: Postman의 상단 오른쪽에 위치한 환경 드롭다운 메뉴를 사용하여 환경을 만들고 선택하세요. 이 환경에 jwt_token 변수를 추가하고 값을 비워 둡니다.


요청 헤더에 JWT 토큰 추가: 이제 토큰이 환경 변수에 저장되었으므로, 이를 사용하여 헤더에 JWT 토큰을 추가할 수 있습니다. API 요청을 작성하고 "Headers" 탭에 다음과 같이 입력하세요:

이렇게 하면 환경 변수 jwt_token에서 JWT 토큰을 가져와 헤더에 자동으로 추가합니다.

이제 로그인 요청을 실행하면, JWT 토큰이 환경 변수에 저장되고, 이후의 API 요청에서 자동으로 헤더에 추가됩니다. 로그인이 만료되거나 JWT 토큰이 변경되면, 로그인 요청을 다시 실행하여 환경 변수를 업데이트하면 됩니다.

728x90
Comments