我希望在Linux机箱上向Apache服务器发送一个标头。如何通过cURL调用实现这一点?
当前回答
使用-H或--header。
手册页:http://curl.haxx.se/docs/manpage.html#-小时
其他回答
GET:
使用JSON:
curl -i -H "Accept: application/json" -H "Content-Type: application/json" http://hostname/resource
使用XML:
curl -H "Accept: application/xml" -H "Content-Type: application/xml" -X GET http://hostname/resource
职位:
对于过帐数据:
curl --data "param1=value1¶m2=value2" http://hostname/resource
对于文件上载:
curl --form "fileupload=@filename.txt" http://hostname/resource
RESTful HTTP发布:
curl -X POST -d @filename http://hostname/resource
对于登录站点(auth):
curl -d "username=admin&password=admin&submit=Login" --dump-header headers http://localhost/Login
curl -L -b headers http://localhost/
您还可以将多个标头、数据(例如JSON)和指定Call方法(POST、GET)发送到单个CUrl调用中,如下所示:
curl -X POST(Get or whatever) \
http://your_url.com/api/endpoint \
-H 'Content-Type: application/json' \
-H 'header-element1: header-data1' \
-H 'header-element2: header-data2' \
……更多联箱。。。。。。。。。。。。。。。。
-d '{
"JsonExArray": [
{
"json_prop": "1",
},
{
"json_prop": "2",
}
]
}'
在PHP中:
curl_setopt($ch, CURLOPT_HTTPHEADER, array('HeaderName:HeaderValue'));
或者可以设置多个:
curl_setopt($ch, CURLOPT_HTTPHEADER, array('HeaderName:HeaderValue', 'HeaderName2:HeaderValue2'));
GET(多个参数):
curl -X GET "http://localhost:3000/action?result1=gh&result2=ghk"
or
curl --request GET "http://localhost:3000/action?result1=gh&result2=ghk"
or
curl "http://localhost:3000/action?result1=gh&result2=ghk"
or
curl -i -H "Application/json" -H "Content-type: application/json" "http://localhost:3000/action?result1=gh&result2=ghk"
使用-H或--header。
手册页:http://curl.haxx.se/docs/manpage.html#-小时
推荐文章
- 如何在PHP中捕获cURL错误
- NGINX 499错误码的可能原因
- 什么是HTTP“主机”报头?
- 在Bash中将输出赋给变量
- HTTPS和SSL3_GET_SERVER_CERTIFICATE:证书验证失败,CA is OK
- 自定义HttpClient请求头
- 过期和缓存控制头之间的区别是什么?
- REST DELETE真的是幂等的吗?
- 如何在Node.js内进行远程REST调用?旋度吗?
- 用户代理字符串可以有多大?
- 什么是接受* HTTP报头q=0.5 ?
- 缓存控制的无缓存和必须重新验证之间的区别?
- 如何为已安装的Ubuntu LAMP堆栈启用cURL ?
- 在PHP中为用户创建一个CSV文件
- Nginx中$host和$http_host的区别是什么