OneWebDesk

cURL 명령 생성기

메서드·헤더·바디를 입력해 실행 가능한 cURL 명령을 생성합니다.

HTTP 메서드, URL, 헤더, 요청 바디만 입력하면 바로 실행 가능한 curl 명령을 만들어 주는 도구입니다. 따옴표 이스케이프나 -X·-H·--data 옵션 순서를 일일이 외우지 않아도 되며, 입력하는 즉시 명령이 갱신되어 그대로 복사해 터미널에 붙여 넣을 수 있습니다.

API 디버깅, REST 엔드포인트 테스트, 문서나 이슈에 재현용 명령을 첨부할 때 유용합니다. 모든 처리는 브라우저 안에서만 이뤄지며 입력한 URL·토큰·바디는 서버로 전송되지 않으므로, 인증 헤더가 포함된 요청도 안심하고 구성할 수 있습니다.

URL을 입력하면 실행 가능한 curl 명령이 여기에 생성됩니다.

생성되는 명령의 구조

이 도구는 입력값을 다음 순서로 조립합니다. 가독성을 위해 각 옵션을 백슬래시(\)로 줄바꿈해 표시하지만, 한 줄로 붙여 넣어도 동일하게 동작합니다.

  • 메서드: GET이 아닌 경우 -X POST처럼 명시합니다.
  • URL: 작은따옴표로 감싸 셸의 특수문자 해석을 막습니다.
  • 헤더: 키와 값을 합쳐 -H 'Content-Type: application/json' 형태로 추가합니다.
  • 바디: GET·HEAD가 아니고 내용이 있으면 --data로 붙입니다.

따옴표와 이스케이프 처리

셸에서 작은따옴표 안의 문자열은 변수 치환이나 이스케이프 없이 그대로 전달되므로 가장 안전합니다. 다만 값 안에 작은따옴표가 들어 있으면 문자열이 끊기기 때문에, 이 도구는 내부 작은따옴표를 '\'' 패턴으로 변환해 따옴표 자체를 안전하게 포함시킵니다. JSON 바디처럼 큰따옴표가 많은 값도 별도 처리 없이 그대로 넣으면 됩니다.

활용 팁

  1. 인증이 필요한 API는 Authorization 헤더 행을 추가해 Bearer <토큰> 형식으로 넣으세요.
  2. JSON을 보낼 때는 Content-Type: application/json 헤더를 함께 추가해야 서버가 올바르게 파싱합니다.
  3. 응답 헤더만 확인하려면 메서드를 HEAD로 바꾸면 바디 입력란이 자동으로 사라집니다.

반대로 동료가 보내준 긴 명령을 분석할 때는 cURL 명령 파서로 메서드·URL·헤더·바디를 표로 분해해 볼 수 있습니다.

자주 쓰는 curl 옵션 빠른 참조

이 도구는 기본적으로 -X·-H·--data만 생성하지만, 실제 디버깅에서는 아래 옵션을 손으로 덧붙이는 경우가 많습니다. 생성된 명령 끝에 추가해 쓰세요.

옵션의미언제 쓰나
-i응답 헤더 + 바디 함께 출력상태코드·캐시 헤더를 한눈에 확인할 때
-v요청/응답 헤더와 TLS 핸드셰이크까지 상세 출력리다이렉트·인증 실패 원인 추적
-L301/302 리다이렉트 자동 추적최종 도착 URL의 응답이 필요할 때
-s진행률 표시줄 숨김(silent)스크립트·파이프로 출력 가공할 때
-o file응답 바디를 파일로 저장바이너리·대용량 응답 다운로드
-w '%{http_code}'상태코드·응답시간 등 지표만 출력헬스체크·성능 측정 자동화

실제 예시로 보기

메서드 POST, URL https://api.example.com/v1/login, 헤더 Content-Type: application/json, 바디 {"id":"alice","pw":"p'wd"}를 입력하면 다음 명령이 생성됩니다.

curl -X POST 'https://api.example.com/v1/login' \
  -H 'Content-Type: application/json' \
  --data '{"id":"alice","pw":"p'\''wd"}'

비밀번호 안의 작은따옴표(p'wd)가 p'\''wd로 변환된 점에 주목하세요. 앞 문자열을 닫고('), 이스케이프된 따옴표를 넣고(\'), 다시 문자열을 여는(') 세 토막 구조라서, 셸이 한 단어로 이어 붙여 결국 따옴표 하나가 값에 포함됩니다.

흔한 실수 / 함정

  • JSON 바디를 보내면서 Content-Type: application/json 헤더를 빠뜨리면, curl이 기본값인 application/x-www-form-urlencoded로 보내 서버가 400을 반환하는 일이 흔합니다.
  • --data(=-d)는 바디에 든 줄바꿈을 제거합니다. 줄바꿈을 그대로 보내려면 --data-binary를 직접 써야 합니다.
  • URL에 &가 들어간 쿼리스트링을 따옴표 없이 붙이면 셸이 명령을 백그라운드로 실행해 버립니다 — 그래서 이 도구는 URL을 항상 작은따옴표로 감쌉니다.

자주 묻는 질문

입력한 토큰이나 URL이 외부로 전송되나요?
아니요. 명령 조립은 전적으로 브라우저에서만 이뤄지며, 입력값은 어떤 서버로도 전송되거나 저장되지 않습니다. 인증 헤더가 포함된 요청도 안전하게 구성할 수 있습니다.
값 안에 작은따옴표가 있으면 어떻게 되나요?
셸에서 안전하게 동작하도록 내부 작은따옴표를 자동으로 이스케이프합니다. 따옴표가 섞인 값을 그대로 입력해도 깨지지 않는 명령이 생성됩니다.
줄바꿈된 명령을 한 줄로 붙여도 되나요?
됩니다. 줄 끝의 백슬래시는 가독성을 위한 셸의 줄 연결 문자일 뿐이라, 백슬래시와 줄바꿈을 모두 제거하고 한 줄로 붙여 넣어도 동일하게 실행됩니다.
Windows의 cmd나 PowerShell에서도 그대로 쓸 수 있나요?
생성되는 명령은 bash/zsh 같은 POSIX 셸 기준입니다. PowerShell은 작은따옴표 규칙이 비슷하지만 줄 연결 문자가 백틱이고, cmd는 따옴표 처리가 달라 일부 수정이 필요할 수 있습니다.
GET 요청에도 바디를 넣을 수 있나요?
이 도구는 GET과 HEAD에서는 바디 입력란을 숨깁니다. 일반적으로 GET 바디는 권장되지 않으며 많은 서버가 무시하기 때문입니다. 바디가 필요하면 POST 등 다른 메서드를 선택하세요.

관련 가이드

관련 도구

HTTP / API