2026년 상식닷컴 선정 식당 & 카페 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요

Postman에서 요청의 응답을 필터링하는 방법은 무엇인가요?

_____
Q1: Postman에서 요청의 응답을 필터링한다는 것은 무엇을 의미하나요?
A1: Postman에서 응답 필터링은 서버로부터 받은 전체 응답 데이터 중에서 필요한 특정 부분만 골라서 확인하거나, 조건에 맞는 데이터만 추출하는 작업을 의미합니다. 주로 JSON 응답 내 특정 키나 값만 보고 싶을 때 사용합니다.

Q2: Postman에서 응답의 특정 필드만 보고 싶을 때 어떻게 하나요?
A2: 테스트 스크립트 탭에 JavaScript 코드를 작성해 `pm.response.json()`으로 응답을 파싱한 후, 원하는 필드만 `console.log()` 하거나 `pm.environment.set()` 등을 이용해 변수로 저장할 수 있습니다. 예:
```js
let response = pm.response.json();
console.log(response.data); // data 필드만 출력
pm.environment.set('filteredData', JSON.stringify(response.data));
```

Q3: 응답 중 특정 항목만 자동으로 확인하는 방법이 있나요?
A3: 네, Tests 탭에서 조건문을 작성해 특정 필드 값이 조건을 만족하는지 검사할 수 있습니다. 예:
```js
let response = pm.response.json();
pm.test('status is success', () => {
pm.expect(response.status).to.eql('success');
});
```

Q4: 응답 필드를 자동으로 추출해 저장하는 방법은?
A4: Tests 탭에 다음처럼 작성해 원하는 값만 환경 변수 또는 컬렉션 변수에 저장할 수 있습니다.
```js
let response = pm.response.json();
pm.environment.set('userId', response.user.id);
```

Q5: 전처리 스크립트를 써서 요청 전에 응답을 필터링할 수도 있나요?
A5: 응답은 요청 후에 받기 때문에 응답 필터링은 Tests 탭에서 수행합니다. 전처리 스크립트(Pre-request Script)는 요청 전 작업에 쓰입니다.

Q6: 응답이 배열일 때 특정 요소만 필터링하는 방법은?
A6: Tests 탭에 다음처럼 조건문을 써 배열을 filter 할 수 있습니다.
```js
let response = pm.response.json();
let filtered = response.items.filter(item => item.active === true);
console.log(filtered);
```

Q7: Postman 콘솔을 이용해 응답 데이터를 쉽게 보는 방법은?
A7: `console.log()` 로 원하는 부분만 출력 후 Postman 하단의 콘솔을 열어 필터링된 결과를 확인할 수 있습니다.

Q8: 응답 필터링에 별도의 플러그인이나 확장 기능이 필요한가요?
A8: 아니요, Postman 자체 기능만으로 충분하며, Tests 탭에서 JavaScript로 자유롭게 응답을 파싱하고 필터링할 수 있습니다.

---

요약: Postman에서는 Tests 탭에 JavaScript 코드를 작성해 `pm.response.json()`으로 응답을 JSON으로 파싱한 뒤 원하는 데이터만 선택적으로 추출하고 검사할 수 있으며, `console.log()` 나 변수 저장을 통해 필터링한 결과를 확인하고 활용할 수 있습니다.
Postman은 API 요청을 테스트하고 응답을 분석하는 데 매우 유용한 도구입니다.

요청의 응답을 필터링하는 방법은 여러 가지가 있으며, 이를 통해 필요한 데이터만을 추출하고 분석할 수 있습니다.

아래에서는 Postman에서 요청의 응답을 필터링하는 다양한 방법을 자세히 설명하겠습니다.

1. Pre-request Script와 Tests 활용하기 Postman에서는 요청을 보내기 전에 실행되는 Pre-request Script와 요청 후에 실행되는 Tests 스크립트를 사용할 수 있습니다.

이를 통해 응답 데이터를 필터링하고 필요한 정보를 추출할 수 있습니다.

예시: ```javascript // Tests 탭에서 실행할 스크립트 pm.test("Filter response", function () { const jsonData = pm.response.json(); const filteredData = jsonData.filter(item => item.active); // 'active' 속성이 true인 항목만 필터링 pm.environment.set("filteredData", JSON.stringify(filteredData)); // 필터링된 데이터를 환경 변수에 저장 }); ```

2. JSONPath 사용하기 Postman은 JSONPath를 사용하여 JSON 응답에서 특정 데이터를 쉽게 추출할 수 있습니다.

JSONPath는 JSON 데이터 구조를 탐색하는 데 유용한 쿼리 언어입니다.

예시: ```javascript // Tests 탭에서 JSONPath를 사용하여 특정 필드 추출 const jsonData = pm.response.json(); const specificField = jsonData.map(item => item.name); // 모든 항목의 'name' 필드 추출 pm.environment.set("names", JSON.stringify(specificField)); ```

3. Postman Collection Runner와 Data Files Postman Collection Runner를 사용하면 여러 요청을 반복적으로 실행하고, 각 요청의 응답을 필터링하여 결과를 수집할 수 있습니다.

이때 CSV 또는 JSON 파일을 데이터 파일로 사용하여 다양한 입력값을 테스트할 수 있습니다.

예시: 1. Collection Runner를 열고, 테스트할 컬렉션을 선택합니다.



2. 데이터 파일을 업로드하여 반복적으로 요청을 실행합니다.



3. 각 요청의 응답을 필터링하여 필요한 데이터를 수집합니다.



4. Postman Monitor 사용하기 Postman Monitor를 사용하면 정기적으로 API 요청을 실행하고, 응답을 필터링하여 결과를 모니터링할 수 있습니다.

이를 통해 API의 상태를 지속적으로 확인하고, 필요한 데이터를 수집할 수 있습니다.



5. Postman Visualizer 활용하기 Postman Visualizer를 사용하면 응답 데이터를 시각적으로 표현할 수 있습니다.

이를 통해 필터링된 데이터를 그래프나 차트로 시각화하여 쉽게 분석할 수 있습니다.

예시: ```javascript // Visualizer 탭에서 응답 데이터를 시각화 const jsonData = pm.response.json(); const filteredData = jsonData.filter(item => item.active); pm.visualizer.set(`

Filtered Data

${JSON.stringify(filteredData, null, 

2)}
`); ```

6. 환경 변수와 전역 변수 활용하기 Postman에서는 환경 변수와 전역 변수를 사용하여 요청 간에 데이터를 공유할 수 있습니다.

필터링된 데이터를 변수에 저장하면, 이후의 요청에서 해당 데이터를 쉽게 사용할 수 있습니다.

결론 Postman에서 요청의 응답을 필터링하는 방법은 다양합니다.

Pre-request Script와 Tests, JSONPath, Collection Runner, Monitor, Visualizer 등을 활용하여 필요한 데이터를 추출하고 분석할 수 있습니다.

이러한 기능들을 적절히 활용하면 API 테스트와 데이터 분석을 보다 효율적으로 수행할 수 있습니다.

작성자: 김은호 [비회원] | 작성일자: 1년 전 2024-11-24 07:41:37
조회수: 241 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.