NEW! |一次 API 调用即可获得干净数据,无需自行抓取。免费领取 10,000 个令牌 →

如何使用 cURL 发送 HTTP 头信息:附示例的综合指南

这份全面的指南将帮助您掌握如何使用 cURL 发送和接收 HTTP 标头。探索示例、自定义标头以及故障排除技巧。

发布于2023年9月21日
已更新2025年5月28日
阅读时间1 分钟

对于使用 API 或 Web 服务的任何人来说,使用 cURL 发送 HTTP 标头是一项基本技能。 HTTP 标头传达有关您的请求的基本信息,例如内容类型、授权等。 cURL 是一个用于发出 HTTP 请求的强大命令行工具,允许您轻松自定义和发送这些标头。在本指南中,我们将引导您完成使用 cURL 发送 HTTP 标头的过程,并提供各种实际示例。

如何使用 cURL 发送 HTTP 头信息:附示例的综合指南

先决条件#

在我们深入示例之前,请确保您的系统上安装了 cURL。您可以通过运行以下命令来检查它是否已安装:

curl --version

如果没有安装,可以从cURL官方网站下载。

基本 cURL 语法#

使用 cURL 发送 HTTP 请求的基本语法是:

curl [options] [URL]

要在请求中包含 HTTP 标头,您可以使用 -H 或 –header 选项,后跟标头信息。

示例 1:发送带有自定义标头的 GET 请求#

让我们从一个对假设的 API 的简单 GET 请求开始,其中包括自定义标头。假设您想在 API 密钥中包含“Authorization”标头。

curl -H "Authorization: Bearer YOUR_API_KEY" https://api.example.com/resource

将 YOUR_API_KEY 替换为您的实际 API 密钥。

示例 2:发送带有 JSON 数据的 POST 请求#

在此示例中,我们将发送带有 JSON 负载和自定义内容类型标头的 POST 请求。

curl -X POST -H "Content-Type: application/json" -d '{"name": "John", "email": "[email protected]"}' https://api.example.com/users

此命令将请求方法指定为 POST (-X POST),将内容类型设置为 JSON (-H “Content-Type: application/json”),并使用 -d 包含 JSON 数据。

示例 3:设置多个标头#

您可以在单个 cURL 请求中包含多个标头。在这里,我们发送带有“Authorization”和“User-Agent”标头的请求。

curl -H "Authorization: Bearer YOUR_API_KEY" -H "User-Agent: MyClient/1.0" https://api.example.com/resource

要随您的请求发送 cookie,请使用 -b 或 –cookie 选项,后跟 cookie 数据。

curl -b "session=12345; preferences=darkmode" https://api.example.com/dashboard

此示例发送两个 cookie:“会话”和“首选项”。

示例 5:遵循重定向#

默认情况下,cURL 不遵循 HTTP 重定向。要启用重定向跟随,请使用 -L 或 –location 选项。

curl -L https://example.com

此命令将遵循任何重定向并显示最终页面内容。

示例 6:发送自定义用户代理#

您可以设置自定义 User-Agent 标头来识别您的请求。

curl -H "User-Agent: MyCustomApp/1.0" https://api.example.com/resource

与需要特定用户代理的 API 交互时,自定义 User-Agent 标头非常有用。

示例 7:发送不带数据的请求标头#

如果需要发送不带请求正文的标头,可以使用 -I 或 –head 选项。

curl -I https://api.example.com/resource

此命令发送一个 HEAD 请求,该请求仅获取标头而不获取实际内容。

示例 8:发送基本身份验证#

要发送 HTTP 基本身份验证凭据,您可以包含“授权”标头,其中包含以 Base64 编码的用户名和密码。

curl -H "Authorization: Basic BASE64_ENCODED_CREDENTIALS" https://api.example.com/resource

将 BASE64_ENCODED_CREDENTIALS 替换为您的 Base64 编码的用户名和密码(例如,用户名:密码)。

示例 9:调试和详细模式#

在排除问题或检查 HTTP 请求和响应时,您可以使用 cURL 的详细模式以及 -v 或 –verbose 选项。

curl -v https://api.example.com/resource

这将显示有关请求和响应的详细信息,包括标头。

使用 cURL 发送 HTTP 标头是使用 Web 服务和 API 的一项关键技能。通过本指南中提供的示例,您可以自定义请求、处理身份验证、发送 cookie 等。当您熟悉 cURL 的功能后,您将能够有效地与各种 Web 服务进行交互。

如何使用 cURL 发送 HTTP 头信息:附示例的综合指南