概述
curl
是一个命令行工具,用于传输数据,支持多种协议,包括 HTTP、HTTPS、FTP 等。它常用于在命令行中发送和接收数据,可以通过 URL 来访问网络资源。
基本用法
bash
curl [options] [URL]
常用选项
-X, --request <command>
: 指定 HTTP 方法(如 GET、POST)。-H, --header <header>
: 添加 HTTP 头部信息。-d, --data <data>
: 发送 POST 请求的数据。-o, --output <file>
: 将输出保存到文件。-O, --remote-name
: 将远程文件下载到本地并使用远程文件名。
使用示例
GET 请求
bash
# 发送 GET 请求并将响应输出到控制台
curl https://api.example.com/data
# 将响应保存到文件
curl -o response.json https://api.example.com/data
POST 请求
bash
# 发送简单的 POST 请求
curl -X POST https://api.example.com/create -d "name=John&age=30"
# 从文件中发送数据
curl -X POST https://api.example.com/create -d @data.json
# 发送 JSON 数据
curl -X POST https://api.example.com/create -H "Content-Type: application/json" -d '{"name":"John","age":30}'
使用 Headers
bash
# 发送带有自定义头部的 GET 请求
curl -H "Authorization: Bearer token" https://api.example.com/data
下载文件
bash
# 下载文件并使用远程文件名
curl -O https://example.com/file.zip
其他常见用法
- 使用
-v
或--verbose
选项查看详细的通信过程。 - 使用
-i
或--include
选项包含响应头信息。