#api-key #http-request #key-management #tui #http-client #requests #curl

程序+库 CuTE-tui

用于 HTTP 请求的 TUI,带有请求和 API 键管理

3 个不稳定版本

0.1.2 2024 年 4 月 5 日
0.1.1 2024 年 4 月 5 日
0.0.9 2023 年 10 月 30 日

#1310 in 网络编程

Download history 9/week @ 2024-04-15 5/week @ 2024-05-20 1/week @ 2024-06-10 24/week @ 2024-07-01 7/week @ 2024-07-22 9/week @ 2024-07-29

每月 75 次下载

GPL-3.0 许可证

2.5MB
5K SLoC

带有 API/认证密钥管理和请求历史/存储的 TUI HTTP 客户端

该项目仍在积极开发中,尽管它可用,但仍可能存在错误,并且需要对代码库进行重构以及添加新功能。

欢迎合作!有很多低垂的果实 👍 和额外的功能的好主意。

image

Curl TUI 环境 (CuTE)。使用 Rust 开发的 HTTP 客户端/libcurl 前端,使用优秀的 ratatui 库,旨在简化在终端中发送 HTTP 请求的过程,允许您存储和管理之前的请求 + API 密钥。

这是一个工具,当您的请求不够复杂以使用 Postman 等工具,但又比您想要使用 curl CLI 更复杂时,或者如果您只是不想记住所有这些命令。您可以向后端发送一些请求进行测试,设置 API 密钥并将请求保存以便稍后再次执行。

新功能:我们现在支持导入您的 Postman 收藏集,这样您就可以在终端中轻松访问您的 API。(注意:目前仅支持 https://schema.getpostman.com/json/collection/v2.1.0/ 收藏集模式)

特性

  • 交互式 TUI 界面:直观的 TUI 界面,使您可以在不离开终端的情况下快速构建和执行 HTTP 请求。

  • 直观的 Vim 键绑定: 默认为 Vim-like 键绑定。最终将在配置文件中添加更改支持。(使用 hb 返回上一页,使用 jk 移动光标上下。在输入框中按 i 进入插入模式,使用 enter 提交表单,使用 esc 退出插入模式)

  • API密钥管理:一个非常简单的基于sqlite的API密钥存储系统。您可以选择从请求中保存密钥,或添加/编辑/删除/重命名它们。

  • Postman集合:导入您的Postman集合,无需离开终端即可轻松访问您的API。

  • 响应可视化:在TUI中以人类可读的格式美化打印JSON响应,然后您可以选择在检查后将其写入文件。您还可以将执行相同请求所需的curl CLI命令复制到剪贴板。

  • 此应用程序可在Linux、Windows和MacOS上构建和运行。

为什么?

  • 您是否运行过curl --help all

  • 我创建这个项目是因为我需要它。作为一个每天测试API的后端开发人员,Postman很棒,但我已经运行了足够的electron应用,我生活在终端中。

安装

针对非smelly-nerds的预构建二进制文件可在发行版页面上找到(目前仅为x86-linux)

使用Cargo安装

  • 先决条件:确保您的系统上已安装Rust和Cargo。
  1. cargoinstall cute_tui

  2. 确保您的~/.cargo/bin目录已添加到您的PATH

  3. cutecute --dump-config . # 这将在您的当前工作目录中放置一个config.toml文件。您可以编辑此文件并将其放置在~/.config/CuTE路径中的目录中(见下文)以自定义应用程序的颜色和一些行为。

从源码构建

  1. 先决条件:确保您的系统上已安装Rust和Cargo。

  2. 克隆存储库:使用以下命令将此存储库克隆到您的本地计算机

    git clone https://github.com/PThorpe92/CuTE.git && cd CuTE
    
  3. 构建和运行:使用Cargo构建和运行应用程序

    cargo build --release 
    
  4. 移动二进制文件:将二进制文件移动到您的PATH中您选择的任何位置

    sudo cp target/release/cute ~/.local/bin/ 
    

命令行选项

cute [可选] '--dump-config ' 或 '--db-path <'/PATH/to/cute.db'>'

  • --dump-config:将默认的config.toml文件输出到指定的路径。如果未指定路径,它将输出到当前工作目录。

    • config.toml文件需要放置在~/.config/CuTE/{config.toml}以供应用程序读取。
    • 目前,配置文件只能指定应用程序的基本颜色和sqlite数据库的路径。未来将添加更多选项。
  • --db-path:指定sqlite数据库的路径。如果未指定路径,它将默认为data_local_dir工作目录。(~/.local/share/CuTE/CuTE.db或Windows/macos的等效路径)

菜单

  1. 主菜单:主菜单将提供创建不同类型HTTP请求和管理API密钥的选项。

  2. 请求类型:选择您要执行的HTTP请求类型。此工具支持GET、POST、PUT、PATCH、HEAD、DELETE和自定义请求。

  3. API密钥管理:在API密钥管理部分,您可以添加、编辑或删除API密钥。将API密钥分配给配置文件和特定请求以方便集成。

  4. 查看响应:执行请求后,该工具将在TUI中以可读的格式显示响应,并可选择将其写入文件。

  5. 已保存的命令:与API密钥类似,您可以存储和查看过去的请求/命令以方便以后使用。

贡献

欢迎并鼓励对此项目的贡献!如果您遇到任何错误,有改进的建议,或想添加新功能,请随时打开问题或提交PR。

在贡献之前,请先阅读贡献指南

许可证

本项目采用GPL3.0许可证


如果您有任何问题或需要帮助,请随时联系

有趣的事实

本项目是在缅因州监狱系统中开发的,作者目前正在服刑。我想尽可能提高人们对目前被关押的220万美国人教育及康复重要性的认识。如果您想了解我的故事,可以阅读我的博客文章

免责声明:本项目按原样提供,其创建者不对其API密钥的使用或由此产生的任何误用或潜在安全漏洞负责。

依赖项

~65MB
~1M SLoC