返回资源中心

Restish

工具软件
API工具
2 次浏览
0 个赞
RESTAPICLI命令行

资源描述

Restish 是一款轻量、现代化的开源 REST API 命令行工具,专为开发者高效调试与交互式探索 HTTP 接口而设计。支持自动 OpenAPI/Swagger 发现、请求历史、环境变量管理、响应格式化(JSON/YAML/pretty-print)及脚本化调用,适用于 API 开发、测试、CI/CD 集成及 DevOps 日常运维场景,显著替代 cURL 和 Postman CLI 等传统方案。

详细内容

## Restish:现代化 REST API 命令行工具 Restish(https://rest.sh/)是一款面向开发者设计的高性能、可扩展的命令行 REST 客户端,旨在以极简语法实现专业级 API 交互体验。它不是 cURL 的简单封装,而是融合 OpenAPI 智能感知、状态管理与可编程能力的下一代 CLI 工具,兼顾易用性与工程严谨性。 ### 核心定位与价值 - **开箱即用的智能发现**:自动检测本地或远程 OpenAPI v3 文档(如 `/openapi.json`),动态生成命令补全与参数提示; - **开发者友好体验**:内置 JSON/YAML 响应高亮、自动缩进、字段过滤(`--jq`)、状态码语义化提示; - **生产就绪能力**:支持多环境配置(dev/staging/prod)、变量注入、请求模板复用、HTTP 认证(Bearer、Basic、API Key)及 TLS 自定义; - **可集成与可扩展**:提供 shell 函数导出、子命令插件机制,并原生兼容 Docsify 等文档平台的语法高亮渲染(如展示 `restish GET /users --jq '.data[].name'` 示例)。 ### 主要功能列表 - ✅ 支持 HTTP 方法:GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONS - ✅ OpenAPI/Swagger v3 自动加载与交互式命令生成 - ✅ 请求历史记录与会话持久化(`.restish/history`) - ✅ 环境变量管理(`restish env set prod --base-url https://api.example.com --header "Authorization: Bearer $TOKEN"`) - ✅ 响应处理:`--jq`(集成 jq)、`--yaml`、`--raw`、`--status-only` 等输出控制 - ✅ 请求体支持:`--body`, `--body-file`, `--form`, `--json` 等多种格式输入 - ✅ 脚本化调用:支持管道输入(如 `cat payload.json | restish POST /items`)和 shell 函数封装 ### 典型使用场景 - **API 快速验证**:无需启动 GUI 工具,5 秒内发起带认证的请求并查看结构化响应; - **OpenAPI 驱动开发**:基于团队共享的 OpenAPI 规范,自动生成可执行命令,降低接口理解成本; - **CI/CD 中的 API 健康检查**:在 GitHub Actions 或 GitLab CI 中嵌入 `restish GET /health --status-only --expect 200`; - **DevOps 日常运维**:批量调用微服务管理端点(如服务注册、配置刷新、熔断开关); - **文档协同**:配合 Docsify 渲染技术文档时,直接嵌入可复制、高亮的 `restish` 命令示例,提升读者实操效率。 ### 上手步骤 1. **安装**(支持 macOS/Linux/Windows WSL): ```bash curl -sSfL https://raw.githubusercontent.com/moznion/restish/main/install.sh | sh -s # 或通过 Homebrew(macOS) brew install moznion/tap/restish ``` 2. **初始化环境**: ```bash restish env add dev --base-url http://localhost:8080 restish env use dev ``` 3. **发起请求**(自动识别 OpenAPI 时支持 Tab 补全): ```bash restish GET /users?limit=10 --jq '.results[] | {id, name, email}' restish POST /login --json '{"username":"admin","password":"pass"}' ``` 4. **查看帮助与文档**: ```bash restish help # 全局帮助 restish help GET # 方法专属帮助 restish docs # 启动本地 OpenAPI 文档浏览器 ``` > ⚠️ 注意:Restish 由 moznion 开源维护,项目地址与最新文档请访问 [https://rest.sh/](https://rest.sh/)。所有功能均基于其官方 v0.9+ 版本特性描述,无第三方依赖或闭源组件。