본문 바로가기
다양한 TIP

curl 사용법 소개(옵션 설명)

by 유기농프로그래밍 2024. 2. 20.
반응형

명령 줄에서 데이터 전송의 강력한 도구가 있습니다.
바로 curl 입니다.

curl은 웹에서 데이터를 송수신하기 위한 명령 줄 도구입니다. 다양한 프로토콜을 지원하며, 간단한 명령어로 웹 서버와의 상호작용을 가능하게 합니다. 이 글에서는 curl의 주요 옵션들과 그 사용법에 대해 자세히 알아보겠습니다.

 

curl 사용법

 

기본 옵션

데이터 전송 방법

-d, --data <data>: POST 메소드를 이용해 데이터를 전송할 때 사용합니다. 예를 들어, 폼 데이터를 전송하는 경우 -d "param1=value1&param2=value2"와 같이 사용할 수 있습니다.

curl -d "username=user&password=pass" http://example.com/login

폼 데이터 전송

-F, --form <name=content>: 파일 업로드와 같은 multipart/form-data POST 요청을 생성할 때 사용됩니다.

curl -F "file=@path/to/local/file" http://example.com/upload

헤더 설정

-H, --header <header>: HTTP 요청에 커스텀 헤더를 추가할 때 사용합니다. 예: -H "Content-Type: application/json".

curl -H "Content-Type: application/json" -d '{"key":"value"}' http://example.com/resource

HTTP 메소드 지정

-X, --request <command>: 특정 HTTP 메소드를 사용하도록 지정합니다. 예: -X DELETE.

curl -X DELETE http://example.com/resource/1

사용자 인증

-u, --user <user:password>: HTTP 기본 인증에 사용됩니다. 사용자 이름과 비밀번호를 :로 구분하여 입력합니다.

curl -u username:password http://example.com

출력 리다이렉션

-o, --output <file>: 서버의 응답을 지정된 파일로 저장합니다.

curl -o example.html http://example.com

헤더만 가져오기

-I, --head: HTTP 헤더만을 가져오고, 본문은 무시합니다.

curl -I http://example.com

사용자 에이전트 설정

-A, --user-agent <agent string>: 요청 시 사용할 사용자 에이전트를 설정합니다.

curl -A "Mozilla/5.0" http://example.com

 

보안과 성능 옵션

URL 인코딩

--data-urlencode <data>: 데이터를 URL 인코딩하여 전송합니다. 이는 URL에 포함될 수 없는 문자를 안전하게 전송하고자 할 때 유용합니다.

curl --data-urlencode "query=안녕하세요" http://example.com/search

SSL 검증 무시

--insecure: SSL 인증서의 유효성 검증을 건너뛸 때 사용합니다. 보안상의 이유로 주의해서 사용해야 합니다.

curl --insecure https://example.com

리다이렉션 따르기

-L, --location: HTTP 3xx 응답 코드를 받았을 때, Location 헤더에 지정된 주소로 자동으로 리다이렉션합니다.

curl -L http://example.com

세션 쿠키 사용

쿠키 전송

-b, --cookie <name=data> 또는 -b 옵션은 서버로 쿠키를 전송할 때 사용됩니다. 이 옵션은 두 가지 방식으로 사용할 수 있습니다. 첫 번째는 쿠키 이름과 값을 직접 지정하는 방식이고, 두 번째는 파일로부터 쿠키를 읽어서 전송하는 방식입니다.

예시 1: 쿠키 이름과 값을 직접 지정하는 방법

curl -b "sessionid=123456" http://example.com


이 명령은 sessionid라는 이름의 쿠키를 값 123456과 함께 서버에 전송합니다.

예시 2: 파일로부터 쿠키를 읽어 전송하는 방법

curl -b cookies.txt http://example.com


이 경우, curl은 cookies.txt 파일에 저장된 쿠키를 읽어 해당 쿠키들을 요청과 함께 서버로 전송합니다. 이 방법은 사용자가 웹 사이트를 탐색하면서 받은 쿠키들을 저장한 후, 다음 요청에서 이 쿠키들을 사용하고자 할 때 유용합니다.

 

curl은 웹과의 통신을 위한 필수적인 도구입니다. 각 옵션의 사용법을 익히고 적절히 활용함으로써 웹 개발 및 테스트 작업의 효율성을 크게 향상시킬 수 있습니다.

 

유용하게 사용해보세요~

반응형

댓글