第一个版本勉强可用的 Postman 替代品,跨平台、GPUI、占用少、不需要账号登录

xiaopenggggggg 2026-08-28 17:45 1

第一个版本:勉强可用的 Postman 替代品,跨平台、GPUI 、占用少、不需要账号登录


最近用 Rust 和 GPUI 搓了一个原生跨平台 HTTP 客户端:Postman GPUI


项目地址:github.com/847850277/postman-gpui


Postman GPUI


做这个项目的原因很简单:我想要一个打开就能发送 HTTP 请求、不需要注册账号、不依赖云端工作区,同时资源占用相对克制的本地工具。


它不是要在第一个版本里完整复刻 Postman 。目前只能算“勉强可用”,但常用的请求调试骨架已经基本齐了。


目前能做什么



  • 支持 GET 、POST 、PUT 、PATCH 、DELETE 、HEAD 、OPTIONS

  • 支持 Params 、自定义 Header 和 Cookie

  • 支持 Basic 、Bearer 认证

  • 支持 JSON 、Raw 、URL-encoded 、Multipart Body

  • 支持 Multipart 文件上传

  • 支持重定向、响应解压、超时和取消请求

  • 展示状态码、响应头和格式化后的响应 Body

  • 支持响应内容快速复制

  • 支持多标签页、全局搜索

  • 使用 SQLite 保存本地请求历史,可以回放历史请求

  • 支持键盘操作、文本选择、剪贴板和常见编辑行为


为什么使用 GPUI


界面使用 Zed 开源的 GPUI 构建,HTTP 和数据层使用 Rust 。


它是原生桌面应用,不需要捆绑 Chromium/Electron 运行时,因此启动速度和资源占用会更克制一些。不过目前还没有做严谨的横向性能测试,所以暂时不报具体内存数字。


这个项目也算是我学习 GPUI 、桌面事件循环、状态管理、异步请求和原生文本编辑的一次实践。


不需要账号登录


应用打开后就能直接发送请求,没有产品账号、云端 Workspace 或强制同步。


需要说明的是,这里的“不需要登录”指不需要登录 Postman GPUI 。你调试自己的接口时,当然仍然可以使用 Basic 、Bearer 、Cookie 等认证方式。


请求历史保存在操作系统本地应用数据目录中的 SQLite 数据库里。已知凭据和 Cookie 会在历史记录落盘前移除,取消和传输失败的请求也不会写入历史。


跨平台支持


项目目标平台包括:



  • macOS:Intel 与 Apple 芯片,macOS 10.15.7+

  • Windows:Windows 10+,x86_64

  • Linux:x86_64 ,支持 Vulkan 的 Wayland/X11 桌面


提供 macOS .dmg、Windows NSIS .exe、Linux .AppImage.deb


它现在还替代不了完整的 Postman ,但如果只是发送常见 HTTP 请求、查看响应、管理多个标签页和本地历史,已经可以拿来试试。


项目使用 MIT License 。如果你也对 Rust 、GPUI 或原生 HTTP 客户端感兴趣,欢迎体验、提 Issue ,或者顺手点个 Star 。


项目地址:https://github.com/847850277/postman-gpui

最新回复 (13)
  • 0xnycth 08-28 17:49
    1
    https://github.com/usebruno/bruno 已经有一个类似的开源的成熟软件了,和这个有啥区别?
  • ffalex 08-28 17:51
    2
    巧了,我也在用 rust+gpui 搞,不过最近比较忙,没什么进度,我先投降不搞了🐶
  • xiaopenggggggg 楼主 08-28 17:55
    3
    @0xnycth 除了技术栈,最终产生的效果差不多吧,rust 原生的跨平台性能可能好点。
  • xiaopenggggggg 楼主 08-28 18:04
    4
    @ffalex coding 起来。
  • byp 08-28 18:06
    5
    我在用 yaak , 感觉不错
  • liuliuliuliu 08-28 18:15
    6
    写桌面 C# 下这么成熟的方案,何必折腾 GPUI
  • wuruxu 08-28 23:14
    7
    https://github.com/libcr/crRequest
    哈哈,真是卷。这里还有个用 C++写的,原生支持 QUIC/HTTP2 协议的请求
  • cellsyx 08-29 08:41
    8
    对于 GPUI 我一直有些疑问。

    虽然说 GPUI 的理论性能很强,但目前它的应用场景里没有那种性能需求高到非他不可的例子,C++ GUI 方案也不是做不到。
    而且控件生态不完善,内存消耗比起 C# 和 C++ GUI 也没什么特别优势,Zed 不加插件默认使用,win10 上的内存占用也差不多要 160MB
    跨平台方面,Zed 在 win10 虚拟机使用还会报错。
    之前试了下 GPUI 的开发,宣传的优点感受不深,但是一个简单示例项目十多 G 的编译中间产物的文件夹占用空间把我吓到了。

    目前 GPUI 的独有优势项是什么呢?看起来更像是一个实验项目,自己造轮子玩还挺有意思的,但作为一个 GUI 方案,总感觉它没有找到自己的优势生态位。有没有老哥来分析一下?
  • xiaopenggggggg 楼主 08-29 10:12
    9
    @cellsyx 编译中间产物多和编译耗时是 Rust 的通病,这可能是编译检查带来的负面影响吧。GPUI 看到好处就是跨平台和 Rust 原生应用吧,生态这个我觉得用的人越多,反馈问题越多,反过来生态就越好。
  • dimwoodxi27 08-29 11:19
    10
    @cellsyx GUI 还没优势啊?真就 webview 注入有优势?白屏过渡消耗和额外的系统资源占用,要优化没优化,也不至于 vsc 底层重构写了大量 cpp 来调优吧,某些人滥用 chromium 内核美名其曰叫提高效率,写个 webview 还去反复压缩说只有几 M ,但实际运行产生几百 M 的资源文件,还有自己业务的默认资源反复在 temp 目录和其他缓存目录中拉屎(从未清理),还有内存调度就是个迷
  • Mageblade 08-29 11:47
    11
    只要不是浏览器套壳,就值得鼓励

    提几个建议:
    1.支持多语言,身为中国人,做的软件没有中文是说不过去的;
    2.完善 api 管理功能,允许保存到本地,添加、删除、修改、分组等;
    3.增加便携版本,数据跟着主程序走,一个目录复制到任何一台新电脑都能带走全部设置

    我目前常用的是这个:
    https://github.com/lakernote/easy-postman
    功能已经很完善了,如果想进一步做下去,建议可以参考一下
  • Leo1994 08-29 13:35
    12
    @0xnycth Bruno 底层是 Electron ,浏览器套壳应用;楼主用的 gpui 是 Rust 原生 UI ,性能和资源占用更好吧;
  • cellsyx 08-29 21:14
    13
    @dimwoodxi27 问题是我的描述里也没说要和 webview 和 chromium 比啊,这不是拿 GPUI 和 C++ GUI 方案比吗
* 帖子来源V2EX
返回