cURL 간단 사용법
2020-11-03
종종 쓰는데, 쓸때마다 옵션을 헷갈려서 주로 사용하는 옵션을 한번 정리해놓는다.
-X
, --request
Request 시 사용할 method 종류(GET, POST, PUT, PATCH, DELETE) 를 기술한다.
curl -X POST -H 'Content-Type: application/json' -d "{ \"name\": \"herdin\", \"age\":\"22\" }" https://your.api.server.com
-k
, --insecure
https 사이트를 SSL certificate 검증없이 연결한다.
-L
, --location
서버에서 HTTP 301 이나 HTTP 302 응답이 왔을 경우 redirection URL 로 따라간다. –max-redirs 뒤에 숫자로 redirection 을 몇 번 따라갈지 지정할 수 있다. 기본 값은 50이다
-v
, --verbose
동작하면서 자세한 옵션을 출력한다.
-s
, --silent
정숙 모드. 진행 내역이나 메시지등을 출력하지 않는다. -o 옵션으로 remote data 도 /dev/null 로 보내면 결과물도 출력되지 않는다
-w
, --write-out
추가 정보를 출력한다
# 여러 정보 from man curl
# time_total The total time, in seconds, that the full operation lasted.
# url The URL that was fetched. (Added in 7.75.0)
# http_code The numerical response code that was found in the last retrieved HTTP(S) or FTP(s) transfer. In 7.18.2 the alias response_code was
# content_type The Content-Type of the requested document, if there was any.
# example
-w %{time_total}\\n
# -H
# 헤더를 추가한다
curl -H 'Content-Type: application/json' https://your.api.server.com
# -i
# 서버가 보낸 응답의 http 헤더를 출력한다.
# -I 는 서버가 보낸 응답에 헤더만 출력하는 것 같은데 확실치 않다.
# -d, --data
# HTTP Post data 를 추가한다
curl -H 'Content-Type: application/json' -d "{ \"name\": \"herdin\", \"age\":\"22\" }" https://your.api.server.com
# -x, --proxy
# 프록시를 경유해 호출한다
curl -v -k --proxy 1.2.3.4:1234 --request GET https://your.api.server.com
# -o, --output
# 저장될 파일명을 지정한다
curl -o ktlint0452 https://github.com/pinterest/ktlint/releases/download/0.45.2/ktlint
# -O, --remote-name
# 저장될 파일명을 리모트 네임으로 사용한다
curl -O https://github.com/pinterest/ktlint/releases/download/0.45.2/ktlint
참고