我希望在Linux机箱上向Apache服务器发送一个标头。如何通过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 "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/
其他回答
下面是最常见的http方法的一些curl命令。
此处考虑的域对象是
@Data
@NoArgsConstructor
@AllArgsConstructor
@Document
@Validated
public class Movie {
@Id
private String id;
private String name;
@NotNull
private Integer year;
@NotNull
private List<String> cast;
private LocalDate release_date;
}
创建后的视频
curl -i \
-d '{"id":1, "name": "Dhoom", "year":2004,"cast":["John Abraham", "Abhishek Bachan"],"release_date": "2004-06-15"}' \
-H "Content-Type: application/json" \
-X POST http://localhost:8080/v1/movies
获取所有视频
curl -i http://localhost:8080/v1/movies
按ID获取服务器
curl -i http://localhost:8080/v1/movies/1
输入更新视频
curl -i \
-d '{"id":1, "name": "Dhoom", "year":2005,"cast":["John Abhraham", "Abhishek Bachhan", "Uday Chopra", "Isha Deol"],"release_date": "2005-03-25"}' \
-H "Content-Type: application/json" \
-X PUT http://localhost:8080/v1/movies/1
删除-MOVIE
curl -i -X DELETE http://localhost:8080/v1/movies/1
使用-H或--header。
手册页:http://curl.haxx.se/docs/manpage.html#-小时
在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"
您还可以将多个标头、数据(例如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是什么?
- 对bash脚本函数中定义的变量使用curl POST
- 使用curl POST multipart/form-data的正确方法是什么?
- PHP -调试Curl
- Access-Control-Allow-Credentials报头到底做什么?
- (1) libcurl不支持或禁用https协议
- 在尝试访问HTTPS url时,如何使用cURL处理证书?
- 如何使用PHP 7安装ext-curl扩展?
- 如何通过JSON文件传递有效载荷卷曲?
- 如何评估http响应代码从bash/shell脚本?
- 编写器安装错误——当它实际启用时需要ext_curl
- 如何使用Python执行cURL命令?
- CURL命令行URL参数
- 我如何为卷曲设置请求头?
- 在PHP中设置Curl的超时