curl 是一个非常强大的命令行工具,用于发送和接收数据,支持多种协议,如 HTTP、HTTPS、FTP 等。它被广泛用于测试、调试 Web 接口以及自动化脚本中。下面是对 curl 的详细解释,包括其基本用法和一些高级特性。 基本用法 发送 HTTP GET 请求 bash curl http://example.com 这个命令会向 http://example.com 发送一个 GET 请求,并显示服务器返回的响应内容。 发送 HTTP POST 请求 bash curl -X POST http://example.com/login -d "username=admin&password=secret" 这里 -X POST 指定了 HTTP 方法为 POST,-d 选项后跟要发送的数据。 使用 -H 添加请求头 bash curl -H "Content-Type: application/json" -X POST http://example.com/api -d '{"key":"value"}' -H 选项用于添加额外的 HTTP 请求头。 跟随重定向 默认情况下,curl 不会跟随 HTTP 重定向。要使其跟随重定向,可以使用 -L 选项。 bash curl -L http://example.com/redirect 保存输出到文件 bash curl -o output.html http://example.com -o 选项允许你将响应内容保存到指定的文件中。 高级特性 发送 JSON 数据 当发送 JSON 数据时,确保设置正确的 Content-Type 头部,并使用 -d 或 --data 发送 JSON 字符串。 bash curl -H "Content-Type: application/json" -X POST http://example.com/api -d '{"name":"John", "age":30}' 使用 -X 自定义请求方法 curl 支持多种 HTTP 请求方法,如 PUT、DELETE 等。通过 -X 选项可以自定义请求方法。 bash curl -X PUT http://example.com/resource -d "content=new content" 显示请求头 bash curl -i http://example.com -i 或 --include 选项会让 curl 显示响应的 HTTP 头部信息。 使用 -s 或 --silent 隐藏进度条 bash curl -s http://example.com 如果你不希望 curl 显示进度条或错误消息,可以使用 -s 选项。 使用 -v 或 --verbose 显示详细过程 bash curl -v http://example.com -v 选项会输出请求和响应的详细信息,这对于调试非常有用。 使用 -o - 将输出到标准输出 bash curl -o - http://example.com | grep "some text" -o - 会将响应内容发送到标准输出(stdout),这样你就可以通过管道(|)将其传递给其他命令进行处理。 curl 的功能远不止这些,它还有许多其他的选项和用法,包括使用代理、认证、cookie 管理等。通过查看 curl 的手册页(man curl)或访问其官方文档,你可以了解到更多关于 curl 的高级特性和用法。
标签:http,详解,Linux,HTTP,curl,com,example,bash From: https://www.cnblogs.com/wusenwusen/p/18396415