我希望向我的Linux盒子上的Apache服务器发送一个头。 我怎样才能通过curl调用实现这个目的呢?
-H/--header <header>
(HTTP) Extra header to use when getting a web page. You may specify
any number of extra headers. Note that if you should add a custom
header that has the same name as one of the internal ones curl would
use, your externally set header will be used instead of the internal
one. This allows you to make even trickier stuff than curl would
normally do. You should not replace internally set headers without
knowing perfectly well what you're doing. Remove an internal header
by giving a replacement without content on the right side of the
colon, as in: -H "Host:".
curl will make sure that each header you add/replace get sent with
the proper end of line marker, you should thus not add that as a
part of the header content: do not add newlines or carriage returns
they will only mess things up for you.
See also the -A/--user-agent and -e/--referer options.
This option can be used multiple times to add/replace/remove multi-
ple headers.
curl --header "X-MyHeader: 123" www.google.com
你可以通过添加-v
选项看到curl发送的请求。
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 "[email protected]" http://hostname/resource
RESTful HTTP Post:
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/
使用-H或--头条
。
Man page: http://curl.haxx.se/docs/manpage.html#-H
GET (多个参数)。
curl -X GET "http://localhost:3000/action?result1=gh&result2=ghk"
或
curl --request GET "http://localhost:3000/action?result1=gh&result2=ghk"
或
curl "http://localhost:3000/action?result1=gh&result2=ghk"
或
curl -i -H "Application/json" -H "Content-type: application/json" "http://localhost:3000/action?result1=gh&result2=ghk"
你也可以发送多个头文件、数据(例如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",
}
]
}'
我用邮递员。
执行任何你想做的调用。 然后,postman提供了一个方便的工具来显示curl代码。
在终端中运行它。 [![在此输入图片描述][1]][1]。
[![在此输入图像描述][2]][2]
[1]: https://i.stack.imgur.com/ByU2a.png [2]: https://i.stack.imgur.com/7jlsh.png
我从curl换成了[Httpie][1]。 语法是这样的
http http://myurl HeaderName:value