littlebot
Published on 2025-04-07 / 0 Visits
0

【源码】基于Go语言的HTTP命令行工具gurl

项目简介

gurl 是使用 Go 语言实现的命令行工具,提供类似 cURL 的命令行接口,用于和 HTTP/HTTPS 服务器交互。它支持多种 HTTP 方法,具备文件上传、代理设置、SSL/TLS 验证等功能,设计灵感源自 Httpie,为开发者进行 HTTP 请求的测试和调试提供便利。

项目的主要特性和功能

  1. 类似 cURL 的命令行接口,支持多种 HTTP 方法。
  2. 支持文件上传,采用 multipart/form-data 格式。
  3. 可从标准输入读取请求体数据。
  4. 能通过命令行参数或环境变量设置代理。
  5. 支持通过命令行参数指定 SSL/TLS 证书进行验证。
  6. 提供多种输出选项,可打印请求/响应的头部信息、主体信息、状态码等。
  7. 支持通过环境变量和命令行参数配置工具行为。

安装使用步骤

1. 安装

确保已安装 Go 编程语言环境(Go 1.11 或更高版本),使用以下命令安装 gurl: bash 安装完成后,将 ~/go/bin 目录添加到 $PATH 环境变量中。

2. 使用

发送 GET 请求

bash gurl example.com

发送带请求体的 POST 请求

bash gurl -method=POST example.com/person/1 name='John Smith' email=john@example.org

发送文件上传的 POST 请求

bash gurl -form=true POST example.com/jobs name='John Smith' cv@~/Documents/cv.pdf

使用代理发送请求

bash gurl --proxy=http://10.10.1.10:3128 example.com

设置自定义用户代理

bash gurl -u 'User-Agent:MyCustomUserAgent' example.com

设置请求超时

bash gurl -t 5 example.com

设置自定义的 header

bash gurl -H 'X-Custom-Header:value' example.com

查看响应的 headers

bash gurl -H 'X-Custom-Header:value' example.com -p 'headers'

查看响应的 body

bash gurl -H 'X-Custom-Header:value' example.com -p 'body'

3. 更多功能

通过以下命令获取更详细的帮助信息: bash gurl --help

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】