Curl 이란 ?
Client URL 이란 의미로 클라이언트에서 url을 사용하여 서버와 데이터를 송수신하는 명령어 툴입니다.
Linux,MacOS,Window 등 다양한 환경에서 다양한 프로토콜을 지원하여 통신 환경에서 자주 쓰입니다.
Curl 사용법
Curl [OPTIONS] [URL]
Curl 옵션
※curl 명령어 옵션은 -로 시작하는 short 형식과 -- 로 시작하는 long 형식 모두 지원합니다.
short | long | 설명 |
---|---|---|
-k | --insecure | https 프로토콜에서 SSL 인증서에 대한 검증없이 연결 |
-i | --head | HTTP 헤더만 보여주고 컨텐츠는 표시하지 않음 |
-D | --dump-header | HTTP 헤더를 file에 기록 (덤프) |
-L | --location | HTTP 301, 302 응답을 받은 경우 리디렉션 URL로 따라간다. --max-redirs 옵션 뒤에 숫자로 몇 번의 리디렉션까지 따라갈 것인지를 적을 수 있다. 기본 값은 50이다. |
-d | --data | HTTP POST 요청 데이터 입력 |
-v | --verbose | 동작하면서 세세한 내용을 출력 |
-J | --remote-header-name | 헤더에 있는 파일 이름으로 다운로드 파일을 저장 |
-o | --output FILE | curl로 받아온 내용을 FILE 이라는 이름의 파일로 저장 |
-O | --remote-name | 파일 저장시 리모트에 저장되어 있던 이름을 그대로 가져와서 로컬에 저장 |
-s | --silent | 진행 내용이나 메시지들을 출력하지 않음 HTTP response code 만 가져오거나 할 경우 유리 |
-X | --request | 요청시 사용할 메소드의 종류 (GET, POST, PUT, PATCH, DELETE) |
-i | --include | 응답에 Content 만 출력하지 않고 서버의 Reponse 도 포함해서 출력한다. (디버깅에 유용) |
-A | --user-agent | 서버에 User-Agent 보내기 |
-u | --user | 서버 사용자 및 비밀번호 |
-T | --upload-file | 로컬 FILE 을 대상으로 전송 |
-f | --fail | HTTP 오류 시 자동으로 실패 (출력 없음) |
-G | 전송할 사이트 url 및 ip 주소 | |
-H | 전송할 헤더를 지정 | |
-J | --remote-header-name | 어떤 웹서비스는 파일 다운로드시 Content-Disposition HeaderVisit Website 를 파싱해야 정확한 파일이름을 알 수 있을 경우가 있다. -J 옵션을 주면 헤더에 있는 파일 이름으로 저장한다. |
-v | --verbose | 동작하면서 자세한 헤더 통신 옵션을 출력한다. |
-C | --continue-at | 파일 다운로드 재개 |