# lightApi **Repository Path**: lingshu/lightApi ## Basic Information - **Project Name**: lightApi - **Description**: 轻量化接口请求工具 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-30 - **Last Updated**: 2026-05-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LightAPI 轻量级 API 测试工具,类似 Postman,浏览器中运行。 ## 功能特性 - **HTTP 请求** — 支持 GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS 方法 - **请求配置** — Headers、Query Params、Body(JSON / Text / Form)编辑 - **文件夹管理** — 多级树形目录,请求可归属于多个文件夹 - **环境变量** — 全局变量 + 文件夹级作用域变量,子级覆盖父级覆盖全局 - **变量插值** — URL、Headers、Body 中使用 `{{key}}` 引用变量 - **响应展示** — 状态码、耗时、Headers、JSON 语法高亮、HTML 预览 - **数据持久化** — 统一使用 Redis 存储 - **CORS 无忧** — 通过后端代理发送请求,绕过跨域限制 ## 技术栈 Vue 3 · Pinia · Vite 6 · TypeScript · Express · Redis · Axios 纯手写 CSS 暗色主题,无第三方 UI 库。 ## 快速开始 ### Docker 部署(推荐) ```bash # 一键启动,访问 http://localhost:3000 docker compose up -d # 停止 docker compose down # 重新构建并启动(代码更新后使用) docker compose down docker compose build docker compose up -d ``` 容器通过 `host.docker.internal` 连接宿主机 Redis(默认 6379 端口)。 ### 本地开发 ```bash # 安装依赖 npm install # 启动开发(前端 5173 + 后端 3000,需先启动 Redis) npm run dev ``` ## 配置 编辑 `config.json` 修改 Redis 和后端服务配置: ```json { "redis": { "host": "127.0.0.1", "port": 6379, "password": "" }, "server": { "port": 3000 } } ``` Docker 部署时可通过环境变量覆盖:`REDIS_HOST`、`REDIS_PORT`、`REDIS_PASSWORD`、`PORT`。 ## 项目结构 ``` src/ main.ts # 入口,注入 window.api shim types.ts # 类型定义 stores/app.ts # Pinia 状态管理(CRUD、变量解析、HTTP 管线、持久化) App.vue # 布局:Sidebar | EnvBar + RequestEditor + ResponseViewer components/ Sidebar.vue # 文件夹树 + 请求列表 FolderItem.vue # 递归文件夹节点 RequestItem.vue # 请求行 RequestEditor.vue # URL 栏 + Headers/Params/Body 标签页 + 保存对话框 SaveFolderNode.vue # 保存对话框中的文件夹树节点 ResponseViewer.vue # 响应展示 EnvBar.vue # 全局变量编辑器 server/ index.js # Express 后端(Redis 数据持久化 + HTTP 代理 + 前端静态托管) config.json # Redis 和后端服务配置 Dockerfile # Docker 镜像构建 docker-compose.yml # Docker 编排 ``` ## License MIT