curl
다운로드 도구가 아니라 API를 찔러보는 도구.
한눈에
- curl = Client URL — 터미널에서 URL로 서버와 데이터를 주고받는 범용 도구
- 패키지 설치기가 아니다 — HTTP·FTP 등으로 데이터를 주고받고, 다운로드는 그중 한 용도일 뿐
- 세 용도: 다운로드(-O url) / API 호출·테스트(-X POST -d) / 헤더 확인(-I url)
- 실무 최다 = API 테스트 — Postman 없이 터미널에서 엔드포인트를 바로 찔러본다
- pip=파이썬 패키지매니저 / curl=범용 HTTP 클라이언트 / wget=파일·사이트 다운로드 특화
curl을 처음 만나는 순간은 보통 "설치 안내에 적힌 curl -O ...로 파일 받기"일 때다. 그래서 다운로드 명령으로 기억하기 쉽다. 하지만 그건 curl이 할 줄 아는 여러 일 중 하나일 뿐이다. curl의 진짜 정체는 명령줄에서 URL로 서버와 데이터를 주고받는 범용 도구고, 한마디로 잡으면 **"터미널에서 쓰는 HTTP 클라이언트"**다.
이름이 곧 정체다, Client URL
curl은 "Client URL"에서 왔다. 이름 그대로 URL을 상대로 말을 거는 클라이언트다. 파이썬 패키지를 깔거나, 프로그램을 설치하는 도구가 아니다. HTTP·HTTPS·FTP 같은 프로토콜로 서버와 데이터를 오가게 해주는 게 전부이자 핵심이다.
그러니 "파일을 받는다"는 건 이 큰 그림의 특수한 한 경우에 불과하다. 서버에 무언가를 보내는 것(POST로 데이터 전송)도, 서버가 뭐라고 답하는지 머리말만 엿보는 것(헤더 확인)도 전부 같은 도구로 한다.
세 가지 용도
curl로 실제로 하는 일은 크게 셋으로 나뉜다.
기억법은 하나만 붙잡으면 된다. curl은 **"다운로드 도구"가 아니라 "터미널에서 쓰는 HTTP 클라이언트"**다. 이렇게 자리를 잡아 두면 나머지 옵션들이 전부 "HTTP 요청을 어떻게 구성할까"의 변주로 읽힌다.
실무에서 진짜 많이 쓰는 건 API 테스트
셋 중에서 실무 빈도가 압도적으로 높은 건 두 번째, API 테스트다. 백엔드를 만지다 보면 "방금 만든 이 엔드포인트가 진짜 되나?"를 수시로 확인해야 하는데, 그때마다 GUI 도구를 열 필요 없이 터미널에서 한 줄로 찔러보는 게 curl이다. Postman 같은 도구를 켜는 대신, 셸에 그대로 요청을 쳐서 응답을 즉시 본다.
curl -X POST https://api.example.com/login \
-H "Content-Type: application/json" \
-d '{"id":"me","pw":"1234"}'
-X로 메서드를, -H로 헤더를, -d로 보낼 데이터를 얹는다. 이 세 옵션 조합이 API 테스트의 90%다.
pip / curl / wget 헷갈리지 않기
터미널에서 "밖에서 뭔가 받아오는" 명령이라 셋이 자주 섞인다. 자리를 갈라두면 안 헷갈린다.
즉 curl과 wget은 둘 다 네트워크로 데이터를 받지만, curl은 주고받는 대화(요청 구성·API 테스트)에, wget은 받아서 저장(대량·재귀 다운로드)에 무게가 실린다.
우리 프로젝트에선
새김 AI 백엔드를 만질 때 curl이 손에 제일 자주 잡히는 도구다. 새 API 엔드포인트를 붙이고 나면, 프론트를 붙이기 전에 curl로 그 엔드포인트를 직접 찔러 "요청이 들어가고 응답이 나오나"부터 확인한다. 서버 코드가 도는지, 헤더·상태 코드가 의도대로 나오는지를 GUI 없이 즉석에서 검증하는 것.
여기서 오가는 요청·응답이 결국 HTTP다. curl은 그 HTTP를 손으로 직접 조립해 쏴 보는 도구라, 이 노트는 HTTP·REST API 노트와 나란히 읽으면 그림이 맞물린다 — 개념을 저기서 잡고, 그 개념을 여기서 터미널로 두드려 보는 셈이다.
더 읽기
curl로 API를 찔러보는 감을 잡고 싶을 때, 옵션과 예시가 친절한 글들.
- API 요청 테스트를 위한 curl 사용해보기 — HyunGyu — curl이 뭔지부터 요청 테스트용 주요 옵션까지 차근차근
- curl로 REST API 테스트하기 — 꿍꿍이의 개발일지 — "간단히 테스트하고 싶을 때" Postman 대신 curl을 쓰는 실전 팁
- CURL 명령어 사용법 총정리 — ihee.com — 자주 쓰는 옵션 20가지를 한 문서에 모아둔 레퍼런스