回答:
-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'
この例では、リファラー(curlの-eまたは--referer)は「localhost」です。
curlリクエストで複数のヘッダーを渡すには、追加する-H
か--header
curlコマンドに追加するだけです。
例
//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コマンドは、これらのヘッダーフィールドを設定するための指定されたオプションを提供します。
たとえば、次の2つのコマンドは同等です。どちらも、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