使用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

相关推荐
番茄去哪了1 小时前
在Java中操作Redis
java·开发语言·数据库·redis
闻哥2 小时前
Java虚拟机内存结构深度解析:从底层原理到实战调优
java·开发语言·jvm·python·面试·springboot
wjs20242 小时前
HTML 属性详解
开发语言
无巧不成书02182 小时前
Kotlin Multiplatform (KMP) 鸿蒙开发整合实战|2026最新方案
android·开发语言·kotlin·harmonyos·kmp
非得登录才能看吗?2 小时前
Qt 的cmake与qmake
开发语言·qt
仰泳之鹅2 小时前
【FreeRTOS】调试技巧篇
开发语言
量子炒饭大师2 小时前
【C++入门】Cyber高维的蜂巢意识 —— 【类与对象】static 成员
开发语言·c++·静态成员变量·static成员
开开心心就好2 小时前
实用PDF批量加马赛克,抹除敏感信息绿色版
java·linux·开发语言·网络·人工智能·pdf·word2vec
不想看见4042 小时前
Word Ladder Ⅱ -- 广度优先搜索--力扣101算法题解笔记
开发语言·c#