如何设置curl的请求头?

如何设置curl的请求头?,curl,Curl,如何在头中为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'

如何在头中为
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'

在本例中,referer(-e或--referer In 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
更进一步

对于标准HTTP头字段,例如用户代理、Cookie、主机,实际上还有另一种设置它们的方法。curl命令提供用于设置这些标题字段的指定选项:

  • -A(或--user-agent):设置“user-agent”字段
  • -b(或--cookie):设置“cookie”字段
  • -e(或--referer):设置“referer”字段
  • -H(或——标题):设置“标题”字段
例如,以下两个命令是等效的。它们都会更改HTTP头中的“用户代理”字符串

    $ 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

你有没有一个例子,你现在正在使用,你可以告诉我们吗?添加多个-H标志。例如
curl-H“Content-Type:application/json”-H“Authorization:Token='yourtokenhere'”
您对接受下面的答案有何感受?我喜欢我的…)@Noel YapWhat如果标题包含
?@Freewind使用单引号而不是双引号包装该值,或者将其转义。在这种情况下,您通常会执行相同的操作。