curl
요청 에 대해 헤더에 여러 값을 전달하려면 어떻게 합니까?
답변
-H
매개 변수를 여러 번 사용하십시오 .
curl -H "Accept-Charset: utf-8" -H "Content-Type: application/x-www-form-urlencoded" http://www.some-domain.com
답변
때로는 헤더를 변경하는 것만으로는 충분하지 않으며 일부 사이트는 리퍼러도 확인합니다.
curl -v \
-H 'Host: restapi.some-site.com' \
-H 'Connection: keep-alive' \
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
-H 'Accept-Language: en-GB,en-US;q=0.8,en;q=0.6' \
-e localhost \
-A 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.65 Safari/537.36' \
'http://restapi.some-site.com/getsomething?argument=value&argument2=value'
이 예에서 참조 자 (-e 또는 –referer curl)는 ‘localhost’입니다.
답변
curl 요청에서 여러 헤더를 전달하려면 단순히 curl 명령을 추가 -H
하거나 추가 --header
하십시오.
예
//Simplified
$ curl -v -H 'header1:val' -H 'header2:val' URL
//Explanatory
$ curl -v -H 'Connection: keep-alive' -H 'Content-Type: application/json' https://www.example.com
더 나아 가기
User-Agent , Cookie , Host 와 같은 표준 HTTP 헤더 필드의 경우 실제로이를 설정하는 다른 방법이 있습니다. curl 명령은 다음 헤더 필드 설정을위한 지정된 옵션을 제공합니다.
- -A (또는 –user-agent) : “User-Agent”필드를 설정하십시오.
- -b (또는 –cookie) : “쿠키”필드를 설정하십시오.
- -e (또는 –referer) : “Referer”필드를 설정하십시오.
- -H (또는 –header) : “Header”필드 설정
예를 들어 다음 두 명령은 동일합니다. 둘 다 HTTP 헤더에서 “User-Agent”문자열을 변경합니다.
$ curl -v -H "Content-Type: application/json" -H "User-Agent: UserAgentString" https://www.example.com
$ curl -v -H "Content-Type: application/json" -A "UserAgentString" https://www.example.com