2019-08-16 03:15:45 +01:00
|
|
|
# curl
|
|
|
|
|
2019-10-18 04:30:29 +01:00
|
|
|
> 向 / 从一个服务器传输数据.
|
2019-10-18 03:33:27 +01:00
|
|
|
> 支持大多数协议,包括 HTTP, FTP, 和 POP3.
|
2021-02-07 20:27:41 +00:00
|
|
|
> 更多信息:<https://curl.se>.
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2019-10-19 07:12:27 +01:00
|
|
|
- 将指定 URL 的内容下载到文件:
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2021-05-04 10:37:07 +01:00
|
|
|
`curl {{http://example.com}} --output {{文件名}}`
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2019-10-19 07:12:27 +01:00
|
|
|
- 将文件从 URL 保存到由 URL 指示的文件名中:
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2021-05-04 10:37:07 +01:00
|
|
|
`curl --remote-name {{http://example.com/filename}}`
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2021-05-04 10:37:07 +01:00
|
|
|
- 下载文件,跟随 重定向,并且自动 续传(恢复)前序文件传输:
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2021-05-04 10:37:07 +01:00
|
|
|
`curl --remote-name --location --continue-at - {{http://example.com/filename}}`
|
2019-08-16 03:15:45 +01:00
|
|
|
|
|
|
|
- Send form-encoded data (POST request of type `application/x-www-form-urlencoded`):
|
|
|
|
|
2021-05-04 10:37:07 +01:00
|
|
|
`curl --data {{'name=bob'}} {{http://example.com/form}}`
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2019-10-19 07:12:27 +01:00
|
|
|
- 发送带有额外请求头,使用自定义请求方法的请求:
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2021-05-04 10:37:07 +01:00
|
|
|
`curl --header {{'X-My-Header: 123'}} --request {{PUT}} {{http://example.com}}`
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2019-10-19 07:12:27 +01:00
|
|
|
- 发送 JSON 格式的数据,并附加正确的 `Content-Type` 请求头:
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2021-05-04 10:37:07 +01:00
|
|
|
`curl --data {{'{"name":"bob"}'}} --header {{'Content-Type: application/json'}} {{http://example.com/users/1234}}`
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2019-10-19 07:12:27 +01:00
|
|
|
- 使用用户名和密码,授权访问服务器:
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2021-05-04 10:37:07 +01:00
|
|
|
`curl --user myusername:mypassword {{http://example.com}}`
|
2019-08-16 03:15:45 +01:00
|
|
|
|
2019-10-19 07:12:27 +01:00
|
|
|
- 为指定资源使用客户端证书和密钥,并且跳过证书验证:
|
2019-08-16 03:15:45 +01:00
|
|
|
|
|
|
|
`curl --cert {{client.pem}} --key {{key.pem}} --insecure {{https://example.com}}`
|