curl 命令详解,Linux中访问url地址
封面图
•
2025-11-15
•
Linux
275
0
0
0
在 Linux 中,`curl` 是一个非常强大的命令行工具,用于从服务器传输数据或向服务器发送数据。它支持多种协议(如 HTTP、HTTPS、FTP、SMTP 等),常用于测试 API 接口、下载文件、发送请求等。 --- ## ✅ 一、基本语法 ```bash curl [选项] [URL] ``` - `[选项]`:控制 curl 的行为。 - `[URL]`:要访问的网址。 --- ## ✅ 二、常用 `curl` 命令示例 ### 1. **访问一个 URL** ```bash curl https://example.com ``` 输出: ``` <!doctype html> <html> <head> <title>Example Domain</title> ... ``` --- ### 2. **获取 HTTP 状态码** ```bash curl -I https://example.com ``` 输出: ``` HTTP/2 200 date: Mon, 15 Apr 2024 12:34:56 GMT content-type: text/html; charset=UTF-8 ... ``` > `-I` 表示只获取响应头信息。 --- ### 3. **将响应保存到文件** ```bash curl -o output.html https://example.com ``` 将网页内容保存为 `output.html` 文件。 --- ### 4. **显示进度条** ```bash curl -O https://example.com/file.txt ``` - `-O`:自动使用远程文件名保存。 如果想看到下载进度: ```bash curl -# -O https://example.com/file.txt ``` --- ### 5. **发送 GET 请求** 默认是 GET 请求: ```bash curl "https://api.example.com/data?param1=value1¶m2=value2" ``` --- ### 6. **发送 POST 请求** ```bash curl -X POST -d "username=admin&password=123" https://api.example.com/login ``` - `-X POST`:指定请求方法为 POST。 - `-d` 或 `--data`:发送的数据。 --- ### 7. **发送 JSON 数据(POST)** ```bash curl -X POST -H "Content-Type: application/json" -d '{"username":"admin","password":"123"}' https://api.example.com/login ``` - `-H`:添加 HTTP 头信息。 --- ### 8. **设置请求头** ```bash curl -H "Authorization: Bearer your_token" https://api.example.com/protected ``` --- ### 9. **使用代理** ```bash curl -x http://proxy.example.com:8080 https://example.com ``` --- ### 10. **显示详细信息(调试)** ```bash curl -v https://example.com ``` 会显示详细的请求和响应过程,包括 headers、body、DNS 解析等。 --- ## ✅ 三、常见选项说明 | 选项 | 说明 | |------|------| | `-o` / `--output` | 将输出保存到文件 | | `-O` | 使用远程文件名保存 | | `-I` / `--head` | 只获取响应头 | | `-X` / `--request` | 指定请求方法(GET、POST、PUT、DELETE 等) | | `-d` / `--data` | 发送数据(POST) | | `-H` / `--header` | 添加 HTTP 头 | | `-u` / `--user` | 设置 HTTP 认证用户名和密码(如:`-u user:pass`) | | `-k` / `--insecure` | 忽略 SSL 证书错误(不推荐生产环境使用) | | `-s` / `--silent` | 静默模式,不显示进度条 | | `-S` / `--show-error` | 如果出错,显示错误信息(配合 `-s` 使用) | | `-v` / `--verbose` | 显示详细信息 | | `-L` / `--location` | 跟随重定向(自动跳转) | --- ## ✅ 四、示例:发送 GET 和 POST 请求 ### GET 示例: ```bash curl "https://api.example.com/users?id=123" ``` ### POST 示例(表单提交): ```bash curl -X POST -d "name=John&age=30" https://api.example.com/create_user ``` ### POST 示例(JSON): ```bash curl -X POST -H "Content-Type: application/json" -d '{"name":"John","age":30}' https://api.example.com/create_user ``` --- ## ✅ 五、安全提示 - 不要在命令中直接写明密码(如 `-u user:password`)。 - 使用 `-k` 时需谨慎,可能带来安全风险。 - 在生产环境中避免使用明文密码或敏感信息。 --- ## ✅ 六、查看帮助 ```bash curl --help ``` 或者查看完整文档: ```bash man curl ``` --- 如果你有具体的使用场景(比如访问某个 API、下载文件、发送 POST 请求等),可以告诉我,我可以给出更具体的命令示例 😊
上一篇:
Linux下的压缩解压缩命令详解
下一篇:
linux .htaccess 设置 404 等错误页面
标题录入,一次不能超过6条
留言
评论