curl 명령어 빌더
메서드·헤더·바디를 채우면 curl 명령어가 완성
데이터는 서버로 전송되지 않습니다 — 모든 처리는 브라우저 안에서만 서버 전송 0건
메서드
헤더
추가한 헤더가 없습니다. 인증 토큰은 아래 항목을 쓰면 더 간단합니다.
Basic 인증
생성된 명령어
curl \ -L \ https://api.example.com/users
curl 명령어 빌더 사용법
URL과 메서드를 고르고 필요한 헤더·바디·인증 정보를 채우면 아래에 완성된
curl 명령어가 실시간으로 만들어집니다. 옵션을 켜고 끌 때마다 결과가 바로
바뀌므로, 어떤 플래그가 명령어의 어느 부분을 만드는지 눈으로 확인할 수 있습니다.
값에 공백이나 따옴표가 들어가면 셸에서 깨지지 않도록 자동으로 인용 처리합니다. 복사 버튼으로 한 줄짜리 명령어를 받아 터미널에 그대로 붙여넣으세요.
자주 쓰는 옵션
-X— HTTP 메서드 지정 (생략하면 GET, 바디가 있으면 POST)-H— 헤더 추가. 여러 번 반복해서 쓸 수 있음-d— 요청 바디. 이것만 써도 자동으로 POST가 됨-L— 리다이렉트(3xx)를 따라감. 없으면 빈 응답만 받음-i— 응답 헤더를 본문과 함께 출력-s— 진행률 표시를 숨김. 파이프로 넘길 때 유용-o— 응답을 파일로 저장
요청이 실패할 때 확인 순서
먼저 -i를 켜서 상태 코드를 보세요. 401·403이면 인증 문제라
토큰이 유효한지, Authorization 헤더 철자가 맞는지 확인합니다.
400이면 대개 바디 형식 문제로, Content-Type과 실제 바디가 맞는지 봐야
합니다.
응답이 아예 비어 있다면 리다이렉트를 의심하세요. -L 없이 301·302를 받으면 curl은
본문 없이 종료합니다. 그래도 원인을 모르겠다면 -v를 켜서 실제로 주고받은 헤더를
확인하는 것이 가장 빠릅니다.
자주 묻는 질문
- POST 요청에 JSON을 보내려면 무엇이 필요한가요?
- 메서드를 POST로 바꾸고 바디에 JSON을 넣은 뒤 Content-Type을 application/json으로 두면 됩니다. 이 세 가지가 맞아야 서버가 JSON으로 인식합니다. Content-Type을 빠뜨리면 서버가 폼 데이터로 해석해 400 오류를 내는 경우가 많습니다.
- -d 를 쓰면 왜 자동으로 POST가 되나요?
- curl은 -d로 바디가 주어지면 메서드를 지정하지 않아도 POST로 보냅니다. 그래서 GET에 바디를 붙이려면 -X GET을 따로 명시해야 하는데, 이는 비표준이라 서버가 무시할 수 있습니다. 이 도구는 GET·HEAD를 고르면 바디 입력란을 숨겨 이 혼란을 없앴습니다.
- 작은따옴표와 큰따옴표 중 무엇을 써야 하나요?
- JSON에는 큰따옴표가 들어가므로 바깥은 작은따옴표로 감싸는 편이 안전합니다. 이 도구는 값에 특수문자가 있으면 자동으로 작은따옴표를 씌우고, 값 안의 작은따옴표도 셸이 깨지지 않게 처리합니다. 다만 Windows 명령 프롬프트(cmd)는 작은따옴표를 문자열로 취급하지 않으므로 PowerShell이나 WSL에서 쓰세요.
- -k 옵션은 언제 쓰나요?
- 자체 서명 인증서를 쓰는 사내 서버처럼 TLS 검증이 실패하는 환경에서 임시로 씁니다. 검증을 통째로 건너뛰므로 중간자 공격을 막지 못합니다. 운영 환경이나 외부 API 호출에는 절대 넣지 말고, 인증서를 제대로 신뢰 목록에 추가하는 쪽으로 해결하세요.