FastAPI, Flask 등으로 API 서버를 개발하고 있다면, 요청에 대해 API 서버가 어떻게 응답하는지 계속해서 테스트해야 합니다. 그때 사용할 수 있는 대표적인 CLI 프로그램에는 curl이 있습니다. 오늘은 저 개인적으로 curl보다 사용법이 간단하다고 생각되는 HTTPie를 소개해드리도록 하겠습니다. HTTPie는 보통 에이치티티파이
라고 부릅니다.
우선 HTTPie를 pip로 설치하려면 다음 명령을 실행하시면 됩니다.
pip install httpie
만약 get 요청을 날리면 pong을 응답해주는 /ping
이라는 엔드포인트가 있다면, 다음과 같이 명령을 작성하시면 됩니다.
http -v GET localhost:5000/ping
헤더에 Access Token을 담아서 요청을 해야한다면, 다음과 같이 Authorization 헤더를 추가해줘야 합니다.
http -v GET localhost:5000/ping Authorization: "Bearer accesstoken"
id, password를 body에 담아서 post 요청을 던지면 회원가입을 수행하는 /sign-up
이라는 엔드포인트가 있다고 가정한다면, 다음과 같이 명령을 작성하면 됩니다.
http -v POST localhost:5000/sign-up id=testid password=testpw1234
[1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization
[2] https://bskyvision.com/entry/http-%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8-httpie%EC%99%80-postman-%EC%86%8C%EA%B0%9C