[‘PostMan 사용법 정리’ 시리즈’] : API를 사용하면서 정리했던 내용들을 정리해보았습니다.
Postman 이란?
개발자가 API를 디자인, 테스트, 문서화, 협업 등를 할 수 있도록 도와주는 소프트웨어입니다.

Postman 설치
Download Desktop App -> 다운로드 -> 다운로드 받은 파일로 설치


Postman 사용법
GET 요청
Postman 실행 후 Collections -> New -> Collections -> 원하는 API collection 생성

다음과 같이 API 요청에 대한 값을 볼 수 있습니다.
Add request -> request 이름 설정 -> URL 입력 -> send
주의!
Ctrl+S로 저장 후 실행을 해야 정상적인 실행이 완료 됩니다.

POST 요청
method를 POST로 변경하고 API를 요청해줍니다.
POST는 GET과 달리 query string으로 요청하지 않습니다.
Body로 데이터를 전송하기 때문에 Body 탭을 클릭해서 원하는 형태로 요청을 해줍니다.

토큰 데이터 보내기
토큰 데이터 전송이 필요한 요청을 클릭 한 뒤 -> Authorization 클릭 -> Auth Type 클릭

Auth Type 클릭 중에 Bearer Token을 선택 한 뒤, Token 값을 입력하고 Send를 누르면 해당 토큰이 같이 요청이 됩니다.

Auth type
인증을 위한 토큰 이외에도 다양한 인증 방법을 선택할 수 있습니다. 인증 방법들은 아래와 같이 있습니다.
1. No Auth
- Meaning: 인증이 사용되지 않는 경우
- Usage: 인증이 필요하지 않은 공개 API용입니다.
2. API Key
- Meaning: 인증을 위한 요청(일반적으로 헤더 또는 쿼리 매개변수)의 일부로 제공되는 키입니다.
- Usage: 사용량을 추적하기 위해 키가 필요한 공개 API에 일반적으로 사용됩니다.
3. Bearer Token
- Meaning: 인증을 위해 요청 헤더에 토큰이 제공됩니다.
- Usage: OAuth 2.0 또는 유사한 토큰 기반 인증 메커니즘을 사용하는 API에서 자주 사용됩니다.
4. Basic Auth
- Meaning: 요청 헤더에 base64로 인코딩된 사용자 이름과 비밀번호 조합을 사용합니다.
- Usage: 자격 증명이 요청과 함께 직접 전송되는 간단한 인증 방법입니다.
5. Digest Auth
- Meaning: 기본 인증보다 더 안전한 대안으로 challenge-response 메커니즘을 사용합니다.
- Usage: 기본 인증보다 더 나은 보안이 필요하지만 고급 방법의 복잡성이 없는 경우에 사용됩니다
6. OAuth 1.0
- Meaning: 인증에 사용되는 토큰 기반 방법으로 기본 인증보다 더 안전한 방법을 제공합니다.
- Usage: 레거시 애플리케이션에서 주로 사용됩니다.
7. OAuth 2.0
- Meaning: 타사 애플리케이션이 웹 서비스에 대한 제한된 액세스 권한을 얻을 수 있도록 허용하는 인증 프레임워크입니다.
- Usage: 안전하고 확장 가능한 인증을 처리하기 위해 최신 애플리케이션에 널리 사용됩니다.
8. Hawk Authentication
- Meaning: 메시지 인증 코드(MAC) 알고리즘을 사용하여 인증된 HTTP 요청을 보내는 방법입니다.
- Usage: 요청 신뢰성과 무결성을 보장합니다.
9. AWS Signature
- Meaning: 액세스 키와 비밀 키를 사용하여 AWS 서비스에 대한 API 요청을 안전하게 인증하는 방법입니다.
- Usage: AWS 리소스에 안전하게 액세스하는 데 사용됩니다.
10. NTLM Authentication
- Meaning: 통신 보안을 위한 Microsoft 인증 프로토콜입니다
- Usage: 통합인증이 필요한 Windows 기반 환경에 사용됩니다.
API 문서화
PostMan을 사용해서 API 문서 작업도 편하게 할 수 있습니다.
어차피 API 테스트도 PostMan으로 하니 여기에 문서 작업도 같이해서 팀원과 공유하면 좋겠죠?
오른쪽 패널의 Document 버튼을 누르면 해당 요청에 대한 문서를 작성 할 수 있습니다.

응답 상태 저장
Save as example로 응답 상태를 저장 할 수도 있습니다.

