使用rust实现的高性能api测试工具

Swift HTTP Tester - 像雨燕一样快速的API测试工具

为什么开发 Swift?

作为开发者,我们经常需要测试 API 接口。Postman 很棒,但它有时候感觉有点"重"。打开慢、占用内存大、还需要登录...我只是想快速测试一个接口,为什么要等那么久?

所以我决定自己动手,开发一个**轻量级、启动快、内存占用小**的 HTTP 测试工具。给它取名 Swift,就是希望它能像雨燕一样快速敏捷!

技术栈

选择技术栈时,我做了个有趣的组合:

  • **后端语言**:Rust(性能卓越、内存安全)

  • **前端框架**:Dioxus(Rust 编写的 React-like 框架)

这意味着整个应用都是 Rust 编写的,编译成单个可执行文件,无需任何运行时依赖!

功能特性

Swift HTTP Tester 已经实现了作为 HTTP 测试工具的核心功能:

✅ **完整的 HTTP 方法支持**:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS

✅ **灵活的请求体**:

  • None

  • JSON(带格式化/压缩按钮)

  • Text

  • Form Data(支持文件上传)

  • x-www-form-urlencoded

  • Binary(文件上传)

  • Raw(自定义 Content-Type)

✅ **实用功能**:

  • 自定义请求头

  • 可调整大小的文本框(拖动右下角)

  • JSON 自动格式化显示响应

  • 显示请求耗时和状态码

令人惊喜的体积

最让我自豪的是它的体积!编译后的二进制文件只有:

  • **macOS ARM64**:2.9MB

  • **macOS x64**:3.2MB

  • **macOS Universal**:6.1MB

没错,只有 3MB 左右!启动速度更是瞬间完成,真正做到了"Swift"这个名字的承诺。

效果预览

![Swift HTTP Tester界面](img.png)

界面简洁直观,左侧配置请求,右侧查看响应,一切都很直接,没有复杂的功能堆砌。

如何获取

直接下载

对于 macOS 用户,可以直接在 `dist/` 目录下载对应架构的二进制文件:

  • Apple Silicon 用户:`swift-macos-arm64`

  • Intel 用户:`swift-macos-x64`

  • 通用版本:`swift-macos-universal`

从源码构建

如果你想自己构建,或者需要在 Windows/Linux 上使用:

```bash

克隆项目

git clone https://github.com/yourusername/swift

cd swift

构建发布版本

cargo build --release

运行

./target/release/swift

```

项目还提供了构建脚本:

  • macOS/Linux:`./build.sh`

  • Windows:`.\build.ps1`

项目结构

```

swift/

├── src/

│ ├── app.rs # 主应用 UI

│ └── http_client.rs # HTTP 客户端逻辑

├── Cargo.toml # 项目配置

├── build.sh # Unix 构建脚本

├── build.ps1 # Windows 构建脚本

├── BUILD.md # 详细构建指南

└── dist/ # 构建输出目录

```

未来计划

这只是第一个版本,我计划继续添加:

  • \] 请求历史记录

  • \] 环境变量支持

欢迎参与

项目采用 MIT 许可证,完全开源。无论你是想:

  • 尝试这个工具

  • 报告 Bug

  • 提交 PR 添加功能

  • 或者只是想看看 Rust + Dioxus 如何构建桌面应用

都欢迎来 GitHub 仓库逛逛!

**项目地址**:https://github.com/IdeasForLife/swift

附上智谱ai解析:https://zread.ai/IdeasForLife/swift

相关推荐
AI智动派6 小时前
从 Python 到 Rust:深入解析 LLM Agent 工具调用的内存安全与异步并发重构实践
rust
_朱志鹏6 小时前
Rust练手项目1--minigrep
rust
ssshooter1 天前
Tauri 项目实践:客户端与 Web 端的授权登录实现方案
前端·后端·rust
AI智动派1 天前
《深入 Rust Async/Await:如何实现一个带超时保护与安全沙箱的 LLM Agent 循环》
rust
范特西林3 天前
一次 to_bits() 引发的 Rust 与 C++ 底层思考
rust
冬奇Lab4 天前
一天一个开源项目(第42篇):OpenFang - 用 Rust 构建的 Agent 操作系统,16 层安全与 7 个自主 Hands
人工智能·rust·开源
量子位4 天前
Transformer论文作者重造龙虾,Rust搓出钢铁版,告别OpenClaw裸奔漏洞
rust·openai·ai编程
哈里谢顿4 天前
Rust 语言入门博客
rust
DongLi016 天前
rustlings 学习笔记 -- exercises/06_move_semantics
rust
ssshooter6 天前
Tauri 踩坑 appLink 修改后闪退
前端·ios·rust