Postman으로 웹 API를 쉽게 테스트하고 관리하는 방법

블로그

정적 웹사이트와 앱이 별도로 유지 관리되는 API에 점점 더 의존하는 세상에서 브라우저에서 놀기만 해서는 작동 방식을 파악하기 어려울 수 있습니다.

그렇다면 Postman을 사용하여 기존 API를 테스트하고 작동 방식을 이해하려면 어떻게 해야 할까요?

  • 포스트맨이란?
  • 우리는 무엇을 구축/배울 것인가?
  • 파트 0: Postman 설정하기
  • 1부: 우편 배달부 소개
  • 파트 2: Squirtle에 대한 정보를 얻기 위한 새 Postman 요청 만들기
  • 3부: Postman에서 PokéAPI용 요청 모음 만들기
  • 파트 4: Postman으로 문장을 Yoda처럼 들리도록 번역하기 위해 POST 요청 만들기
  • 5부: API 키로 반지의 제왕 API에 대한 요청 인증

포스트맨이란?

우편 집배원 팀이 사용하기 쉬운 구성을 사용하여 API를 안정적으로 테스트하는 데 사용할 수 있는 도구입니다. 인증, 헤더 설정, 페이로드 사용자 지정 등 API 사용의 마찰을 줄이는 데 도움이 되는 여러 기능을 포함하여 API를 처리할 때 기대할 수 있는 기능이 포함되어 있습니다.

그리고 그것은 단지 테스트를 위한 것이 아닙니다. 장점은 다양한 팀 구성원을 위한 API 작업의 여러 측면에 사용할 수 있다는 것입니다. 프로젝트 관리자가 제대로 작동하는지 확인하고 싶거나 API를 사용하여 바로 변경하는 것이 더 쉬울 수도 있고, QA 엔지니어가 모든 것이 여전히 작동하는지 확인해야 하거나, 개발자가 API 자체에서 작업하는 동안 적극적으로 변경하기를 원할 수도 있습니다. .

가장 좋은 점 - Postman은 협업 기능을 제공합니다. 프리 티어에는 저장된 API 요청 컬렉션 내보내기 및 가져오기와 공유 링크 생성이 포함됩니다. 팀의 일원이라면 모든 사람이 최신 컬렉션을 보유하고 있는지 확인하기 위해 컬렉션을 동기화할 수 있는 유료 계층이 있습니다.

우리는 무엇을 구축/배울 것인가?

Postman의 개념을 다루기 위해 두 가지 다른 예제 API를 살펴보겠습니다.

먼저 다음을 사용하여 몇 가지 간단한 HTTP 요청을 살펴보겠습니다. 포켓몬을 위한 공개 API .

그런 다음 특정 HTTP 요청을 만드는 방법을 보여주기 위해 한 부분에 대해 Yoda Translator API를 사용할 것입니다.

망토를 사는 곳

기본 작동 방식을 이해한 후에는 반지의 제왕 API API에서 인증이 작동하는 방식을 알아보세요. 이를 위해서는 API 키에 대한 무료 계정을 등록해야 합니다.

파트 0: Postman 설정하기

시작하기 전에 다음이 필요합니다. 우편 집배원 이 연습을 따르기 위해. 좋은 소식은 Postman이 Mac, Windows 및 Linux에서 무료로 제공되므로 자신에게 적합한 버전을 찾을 수 있어야 한다는 것입니다.

우편 배달부 받기: https://www.postman.com/downloads/

다운로드가 완료되면 표준 설치 지침을 살펴보고 열면 준비가 완료됩니다!

1부: 우편 배달부 소개

Postman을 처음 열면 즉시 시작할 수 있는 다양한 옵션이 있는 런치패드가 표시됩니다.

다소 압도적으로 보일 수 있지만 알아야 할 몇 가지 핵심 개념을 분석해 보겠습니다.

요청

요청은 일종의 특정 API 요청입니다. 이것은 특정 엔드포인트에 대한 GET이든 POST이든 단일 유형의 요청입니다. 테스트할 때 끝점 사이를 이동할 수 있도록 각 유형의 끝점에 대해 새 요청을 만들고 싶을 것입니다.

컬렉션

컬렉션은 요청 그룹입니다. 이것은 요청을 다른 그룹으로 구성하는 데 유용합니다. 이것은 완전히 다른 두 API(예: Twitter 대 Slack)처럼 간단할 수도 있고 단일 API에 대한 두 가지 다른 API 그룹일 수도 있습니다(예: Twitter Tweets API 대 Twitter Accounts API).

권한 부여

권한 부여는 요청을 하는 사람이나 사용자를 대신하여 해당 요청을 하는 컴퓨터에 의해 API로 요청을 인증하는 방법입니다. 이는 일반적으로 계정에 할당된 정적 값이거나 다음과 같은 도구를 사용하여 동적으로 생성될 수 있는 API 키의 형태로 제공됩니다. OAuth .

환경

환경을 사용하면 다른 환경 간에 동일한 끝점을 더 쉽게 사용할 수 있도록 하는 특정 변수를 사용하도록 끝점을 구성할 수 있습니다. 예를 들어, 같은 |_+_| 프로덕션 환경과 개발 환경 모두에 엔드포인트가 있지만 도메인이 다릅니다. 환경을 사용하면 가변 도메인으로 단일 요청을 관리할 수 있습니다.

작업 공간

이 게시물에서는 작업 공간에 대해 자세히 설명하지 않겠지만 다양한 컬렉션 집합을 관리하고 구성할 수 있습니다. 직장과 개인 프로젝트 모두에 Postman을 사용하려는 경우 개인 작업 공간뿐만 아니라 작업 작업 공간도 있을 수 있다고 상상해 보십시오.

이 문서의 목적을 위해 요청, 수집 및 승인을 다룹니다.

파트 2: Squirtle에 대한 정보를 얻기 위한 새 Postman 요청 만들기

이제 다른 용어에 대해 더 잘 이해했으므로 실제로 요청을 생성해 보겠습니다.

UI의 왼쪽 상단에 다음과 같은 주황색 버튼이 표시되어야 합니다. 새로운 . 계속해서 클릭한 다음 선택하십시오. 요구 .

요청 자체에 들어가기 전에 몇 가지를 요청합니다.

이 첫 번째로 필요한 것은 이름입니다. 먼저 Pokémon Squirtle에 대한 정보를 요청하므로 이 Pokémon의 이름을 Squirtle로 지정하겠습니다.

컬렉션도 필요하므로 클릭하십시오. 컬렉션 만들기 그리고 컬렉션의 이름을 내가 가장 좋아하는 포켓몬으로 지정하겠습니다.

컬렉션 이름 옆에 있는 주황색 체크 표시 버튼을 클릭한 다음 구하다 .

이 시점에서 새로운 요청이 있을 것이므로 해당 요청을 작성해 보겠습니다.

첫 번째 요청에 대해 먼저 작성해야 할 두 가지 사항이 있습니다.

그리고 그것들이 정확한지 확인하고 나면, 당신은 단순히 파란색을 칠 수 있습니다 보내다 버튼을 클릭하고 첫 번째 요청을 성공적으로 완료했습니다!

우리는 즉시 볼 수 있는 몇 가지를 얻습니다.

  • 신체: 이제 하단에 API 요청의 응답 본문이 표시됩니다. Squirtle API의 경우 |_+_|, |_+_| 및 |_+_|와 같은 데이터가 포함된 JSON 개체가 있어야 합니다.
  • 상태: 오른쪽에 HTTP 상태 코드가 표시되어야 합니다. 200 Ok는 좋은 신호이며 성공했음을 의미합니다!
  • 시간: 단순히 요청을 완료하는 데 걸린 시간
  • 크기: 응답 데이터의 크기(이 예에서는 KB)

상태, 시간 및 크기 위로 마우스를 가져가서 각 옵션에 대해 자세히 알아볼 수도 있습니다.

그래서 우리는 첫 번째 요청을 했습니다!

계속 진행하기 전에 주의해야 할 점은 요청이 브라우저 탭에 있는 것처럼 보인다는 것입니다. 특정 요청이 완료되면 탭을 닫고 구하다 다음 번에 모든 변경 사항이 있는지 확인하십시오!

3부: Postman에서 PokéAPI용 요청 모음 만들기

요청을 생성했으므로 이제 컬렉션을 생성해 보겠습니다. 기술적으로 우리는 이미 Part 2를 위한 새 컬렉션을 만들어야 했지만 컬렉션 자체가 어떻게 작동하는지 배우기 위해 새 컬렉션을 만들 것입니다.

UI 왼쪽 상단에서 주황색 새로운 버튼을 다시 누르고 선택 수집 .

요청과 유사하게 이름을 요구하므로 이것을 PokéAPI라고 부르겠습니다. 선택적으로 설명을 추가한 다음 창조하다 하단에.

왼쪽에 컬렉션이 표시됩니다. 우리가 작업할 것이기 때문에 폴더를 선택하고 확장할 수 있습니다.

요청을 추가하기 전에 PokéAPI에는 다양한 유형의 요청이 있으므로 좀 더 철저하게 구성하는 것이 좋습니다. PokéAPI 컬렉션 옆에 있는 세 개의 점을 클릭하고 폴더 추가 .

www roku.com/link

다른 것들과 마찬가지로 이것은 이름을 요구합니다. 폴더는 컬렉션 내부의 컬렉션과 유사하므로 유사한 옵션을 얻을 수 있습니다. 이 포켓몬의 이름을 지정하고 주황색을 클릭합시다. 구하다 이전과 같은 버튼.

이제 요청을 추가해 보겠습니다! 먼저 컬렉션에 폴더를 추가한 방법과 유사하게 Pokémon 폴더 옆에 있는 세 개의 점을 클릭하지만 이번에는 요청 추가 .

이 요청의 이름을 포켓몬으로 지정하겠습니다. Pokémon 폴더 안에 Pokemon 요청이 있다는 것이 혼란스러울 수 있지만, Pokemon은 Pokémon 그룹의 끝점 중 하나일 뿐입니다.

이제 이전에 Squirtle 요청에 사용한 것과 동일한 API를 사용하겠습니다.

그리고 이전과 마찬가지로, 우리가 파란색을 쳤을 때 보내다 버튼을 누르면 성공적인 요청이 표시됩니다!

이제 다른 요청을 추가해 보겠습니다. 이전과 동일한 프로세스에 따라 PokéAPI Pokémon 폴더 아래에 새 요청을 만들고 이 요청의 이름을 Abilities로 지정하겠습니다.

첫 번째 Squirtle 엔드포인트의 응답을 스크롤하면 다른 API URL이 많이 표시됩니다. 상단에는 |_+_| 그리고 우리는 급류와 비 접시의 두 가지가 있습니다.

좋아하는 꼬부기 능력을 선택하고 복사 |_+_| 방금 생성한 새 능력 요청에 값을 입력하고 |_+_|를 사용하겠습니다.

요청 유형을 GET으로 남겨두고 파란색을 누르십시오. 보내다 버튼을 누르면 성공적인 응답을 다시 볼 수 있습니다!

여기에서 Squirtle 능력 Rain Dish에 대한 많은 정보를 얻을 수 있으며 일부 세부 사항은 다른 언어로 제공됩니다.

이제 포켓몬과 능력을 포함한 Pokémon API 끝점 그룹을 나타내는 Pokémon 폴더가 있는 새로운 PokéAPI 컬렉션이 있습니다.

우리는 그 2개의 요청으로 3부를 중단할 것이지만 계속해서 자유롭게 PokéAPI 요청을 원하는 만큼 추가할 수 있습니다!

파트 4: Postman으로 문장을 Yoda처럼 들리도록 번역하기 위해 POST 요청 만들기

지금까지는 GET 요청만 했지만 실제로 데이터를 보내야 하는 POST 요청을 하고 싶다면 어떻게 해야 할까요?

POST 요청을 위해 우리는 Yoda Translator API를 사용할 것입니다. funtranslations.com . 이 API는 단일 매개변수만 사용하지만 개념을 이해하는 데 사용할 수 있는 좋은 공개 엔드포인트입니다.

먼저 새 요청으로 새 컬렉션을 생성해 보겠습니다.

  • 수집: 재미있는 번역
  • 요구: 요다

이번에는 GET 요청 대신 요청 구성이 다음과 같습니다.

자 이번에는 파란색을 치면 보내다 버튼을 누르면 성공적인 200 응답을 얻지 못하고 400을 얻습니다!

캐리 반 다이크 위키피디아

API에 게시할 데이터를 실제로 설정한 적이 없으며 해당 데이터가 필요하므로 추가해 보겠습니다.

바로 아래 요청 URL , 클릭 신체 . 그런 다음 없음 대신 날것의 체형으로. 마지막으로 유형의 맨 오른쪽에서 다음을 변경합니다. 텍스트 에게 JSON .

그런 다음 그 아래 공간에 다음을 추가할 수 있습니다.

/profile

이제 파란색을 클릭하십시오. 보내다 버튼을 다시 누르면 성공적인 응답을 받습니다!

우리는 이 개념을 거의 모든 API에 적용할 수 있습니다. Postman은 JSON 게시를 허용할 뿐만 아니라 Body Type 섹션에 나열된 다른 형식을 사용할 수 있습니다. 즉, 사용 중인 API에 필요한 옵션이 다양합니다.

5부: API 키로 반지의 제왕 API에 대한 요청 인증

나머지 연습에서는 반지의 제왕 API를 사용할 것입니다.

먼저 반지의 제왕 API에서 API 키를 사용하여 요청하려면 인증이 필요합니다. 시작하려면 시작하기 전에 다음으로 이동해야 합니다. 무료 계정을 생성하십시오 .

https://the-one-api.herokuapp.com/sign-up

가입하고 로그인하면 가장 먼저 API 키가 표시됩니다! 이 키를 복사하거나 나중에 찾을 수 있는 위치를 기억하십시오. 페이지에서 나가면 언제든지 다음으로 이동하여 페이지를 잡을 수 있습니다. 어서 오십시오 그리고 계정 API 웹사이트 탐색에서

시작하려면 먼저 새 컬렉션과 요청을 생성해 보겠습니다.

위와 같이 설정하셨다면, 보내다 , 401이라는 응답과 인증되지 않음을 즉시 알 수 있습니다.

이 API에는 API 키가 필요하기 때문에 이것이 정확히 우리가 예상한 것입니다. 그럼 권한 부여 탭. 그런 다음 선택할 수 있습니다. 유형 NS 무기명 토큰 , 오른쪽에 반지의 제왕 API로 방금 설정한 키를 붙여넣을 수 있습니다.

그리고 우리가 치자마자 보내다 , 이제 성공적인 응답을 볼 수 있습니다!

이것은 정말 훌륭하게 작동했지만 단일 키를 사용하는 많은 요청이 있는 경우에는 어떻게 될까요? 각 요청에서 이를 관리해야 합니까?

개별 요청마다 관리하는 대신 컬렉션에서 관리할 수 있습니다. 먼저 다른 요청을 작성해 보겠습니다.

반지의 제왕 컬렉션과 Movie 폴더에서 새 요청을 만듭니다.

이 요청에서는 첫 번째 요청의 응답에서 ID를 사용하겠습니다. 저는 |_+_| The Two Towers의 ID이므로 요청 URL은 다음과 같습니다.

abilities

이제 요청 Authorization에서 토큰을 설정하는 대신 유형을 다음과 같이 둡니다. 부모로부터 권한 상속 . 컬렉션 옆에 있는 세 개의 점을 클릭하고 편집하다 .

여기서는 첫 번째 요청에서 수행한 것과 동일한 작업을 Collection 구성에서 수행할 것입니다. 선택 권한 부여 탭, 유형 선택에서 무기명 토큰 , 그리고 에서 토큰 필드에 다시 토큰을 붙여넣습니다.

돼지 금융을 사는 방법

마지막으로 클릭 업데이트 그리고 파란색을 치다 보내다 버튼을 다시 누르면 성공적인 요청을 볼 수 있습니다!

이제 모든 영화 요청으로 돌아가 부모로부터 인증 유형을 사용하도록 권한 부여를 업데이트할 수 있으며 여전히 작동해야 합니다!

Postman으로 무엇을 더 할 수 있습니까?

많은 기본 사항을 다루었지만 Postman으로 할 수 있는 일은 훨씬 더 많습니다. 여기 내가 좋아하는 몇 가지가 있습니다.

환경 변수

프로젝트에서 개발자로 작업하는 경우 팀에서 개발 및 프로덕션 환경과 같은 여러 환경을 사용할 수 있습니다. 완전히 별도의 요청을 만들고 유지하는 대신 환경 변수를 추가하고 환경 간에 전환할 때 해당 변수를 변경할 수 있습니다!

변수는 많은 시나리오에 적용되지만 일반적인 용도입니다. 방법을 알아보려면 Postman의 문서를 확인하세요.

https://learning.postman.com/docs/postman/variables-and-environments/variables/

컬렉션 및 데이터 가져오기 및 내보내기

Postman의 장점은 요청이 모두 정리되면 다른 사람들이 사용할 수 있도록 내보낼 수 있다는 것입니다. 이것은 또한 다른 팀 구성원의 컬렉션을 가져올 수 있음을 의미합니다. 이렇게 하면 모든 사람이 동일한 컬렉션을 사용하고 있는지 훨씬 쉽게 확인할 수 있습니다.

보너스: 이 파일은 JSON이기 때문에 Git 리포지토리에 저장할 수도 있습니다.

그러나 명심하십시오. 이 가이드에서 설명한 것처럼 컬렉션에 권한 부여를 사용하는 경우 컬렉션을 내보낼 때 포함하지 않는 것이 좋습니다.

https://learning.postman.com/docs/postman/collections/importing-and-exporting-data/

자동화된 테스트

컬렉션에 요청 집합이 있고 더 나아가 Github에 저장하는 경우 API의 자동화된 테스트를 관리하는 방법의 일부로 이러한 요청을 사용할 수 있습니다.

이를 위한 몇 가지 솔루션이 있지만 Postman에는 앱에 바로 내장된 컬렉션 실행기가 포함되어 있으며 새로운 남자 터미널에서 바로 테스트를 실행할 수 있는 명령줄 도구입니다.

https://www.postman.com/use-cases/api-testing-automation/

#api #postman #개발자 #웹 개발

www.youtube.com

Postman으로 웹 API를 쉽게 테스트하고 관리하는 방법

Postman을 사용하여 Web API를 테스트하고 검색하는 방법을 알아보세요. PokéAPI를 사용하여 기본 GET 요청을 만드는 방법, Yoda 번역기로 POST 요청을 보내는 방법, 반지의 제왕 API로 인증된 요청을 보내는 방법을 알아보겠습니다.