# HTTP Request Debugger **Repository Path**: Krpgly/http-request-debugger ## Basic Information - **Project Name**: HTTP Request Debugger - **Description**: HTTP Request Debugger 是一个基于 Go 语言和 Gin 框架的轻量级 HTTP 请求调试工具。它能够捕获并解析客户端发送的 HTTP 请求,包括请求头、请求参数、请求体等信息,并以 JSON 格式返回给客户端,方便开发者调试和排查问题。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-09 - **Last Updated**: 2025-07-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # HTTP Request Debugger ## 简介 HTTP Request Debugger 是一个基于 Go 语言和 Gin 框架的轻量级 HTTP 请求调试工具。它能够捕获并解析客户端发送的 HTTP 请求,包括请求头、请求参数、请求体等信息,并以 JSON 格式返回给客户端,方便开发者调试和排查问题。 ## 功能 - 捕获并解析 HTTP 请求的基本信息,包括 URL、方法、协议、主机、路径、客户端 IP 等。 - 解析请求参数,包括查询参数和表单参数。 - 解析请求头,并以键值对的形式返回。 - 支持多种类型的请求体解析,包括 JSON、multipart/form-data 和 application/x-www-form-urlencoded。 - 返回详细的 JSON 格式响应,包含请求和服务器信息。 ## 安装 ### 依赖 - Go 1.16 或更高版本 - Gin 框架 ### 安装步骤 1. 克隆仓库: ```bash git clone https://gitee.com/Krpgly/http-request-debugger.git cd http-request-debugger ``` 2. 安装依赖: ```bash go mod tidy ``` 3. 运行: ```bash go run . ``` 4. 编译: ```bash go build ./http-request-debugger ``` ## 使用 启动服务后,HTTP Request Debugger 将在 `http://localhost:7700` 上运行。你可以通过发送 HTTP 请求到该地址来测试和调试。 ### 示例 #### 发送 GET 请求 ```bash curl "http://localhost:7700/path?param1=value1¶m2=value2" ``` #### 发送 POST 请求(JSON) ```bash curl -X POST -H "Content-Type: application/json" -d '{"key1":"value1","key2":"value2"}' http://localhost:7700/path ``` #### 发送 POST 请求(表单数据) ```bash curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d 'key1=value1&key2=value2' http://localhost:7700/path ``` #### 发送 POST 请求(multipart/form-data) ```bash curl -X POST -F "key1=value1" -F "key2=value2" http://localhost:7700/path ``` ### 响应示例 ```json { "request": { "id": "1656678912345678901", "timestamp": "2022-07-10 12:34:56.789", "client": { "ip": "127.0.0.1", "host": "127.0.0.1:12345" }, "method": "GET", "protocol": "HTTP/1.1", "url": "http://localhost:7700/path?param1=value1¶m2=value2", "host": "localhost:7700", "path": "path", "headers": { "Accept": "*/*", "User-Agent": "curl/7.68.0", "Host": "localhost:7700", "Connection": "Keep-Alive" }, "params": { "param1": ["value1"], "param2": ["value2"] }, "data": null, "raw_body": "" }, "server": { "name": "Gin Request Debugger", "version": "1.2.0", "time": "Mon, 10 Jul 2022 12:34:56 GMT" } } ```