사용 방법
- curl 명령어를 붙여넣거나 예시 불러오기를 클릭하세요.
- JavaScript fetch, Node.js axios, Python requests, Go 중에서 고르세요.
- 생성된 코드를 복사해 프로젝트에 넣으세요.
옵션 설명
- 지원하는 옵션
- -X, -H, -d / --data-raw / --data-binary / --data-urlencode, --json, -F, -u, -b, -A, -e, -G, -I, -L, -k, --compressed를 짧은 형식, 긴 형식, --option=value 형식으로 모두 지원해요. -s, -v, -o처럼 출력에만 관련된 플래그는 무시돼요.
- JSON 본문
- JSON Content-Type으로 보내는 본문은 Python의 json=payload처럼 객체 리터럴로 바뀌어서 수정하기 쉬워요.
- 리디렉션
- curl은 -L을 주지 않으면 리디렉션을 따라가지 않아요. 생성된 코드도 이 동작을 그대로 유지해요. 예를 들어 Python에서는 allow_redirects=False가 돼요.
예시
브라우저에서 복사한 이 명령은
curl -X POST https://api.example.com/v1/users \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer TOKEN' \
-d '{"name":"Ada","age":36}'
fetch로는 다음과 같이 바뀌고,
const response = await fetch("https://api.example.com/v1/users", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer TOKEN",
},
body: JSON.stringify({
"name": "Ada",
"age": 36
}),
redirect: 'manual',
});
Python requests로는 다음과 같이 바뀌어요.
response = requests.post("https://api.example.com/v1/users", headers=headers, json=payload, allow_redirects=False)
Python에서는 json= 인자가 Content-Type 헤더를 설정하므로 headers에서는 빠져요. redirect: 'manual'과 allow_redirects=False는 리다이렉트를 따라가지 않는 curl의 기본 동작을 유지해요.
자주 묻는 질문
브라우저에서 curl 명령어는 어떻게 얻나요?
개발자 도구를 열고 Network 패널에서 요청을 마우스 오른쪽 버튼으로 클릭한 뒤 Copy → Copy as cURL을 선택하세요. bash 형식과 Windows cmd 형식 모두 인식해요.
토큰이나 쿠키가 어딘가로 전송되나요?
아니요. 명령어는 브라우저 안에서 분석되며, 실행되거나 업로드되지 않아요. 생성된 코드를 공유하기 전에 비밀 정보는 꼭 지우세요.
어떤 옵션이 지원되지 않는다고 나오는 이유는 뭔가요?
클라이언트 인증서나 프록시처럼 요청 방식을 바꾸지만 간단한 대응 코드가 없는 옵션은 변환되지 않아요. 해당 옵션을 지우고 설정은 직접 추가하세요.
개인정보 보호
이 도구는 전적으로 브라우저에서 실행돼요. 파일과 텍스트는 기기에서 처리되며 서버로 업로드되지 않아요.