# WBRDevicesUtils **Repository Path**: work_project_item/wbrdevices-utils ## Basic Information - **Project Name**: WBRDevicesUtils - **Description**: 未必然本地测试代码管理工具 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-28 - **Last Updated**: 2025-04-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 设备管理系统 一个基于 Vue 3 + Vite 的简单前端项目。 ## 技术栈 - Vue 3 - Vite - Vue Router - Element Plus - Axios ## 项目结构 ``` src/ ├── App.vue # 根组件 ├── main.js # 入口文件 ├── router/ # 路由配置 ├── views/ # 页面组件 ├── api/ # API接口封装 ├── utils/ # 工具函数 ├── config/ # 配置文件 └── stores/ # 状态管理 ``` ## 主要功能 ### 1. 更新包上传 - 入口:主页(Home.vue) - 组件:src/views/components/UpdatePackageUpload.vue - 功能:上传描述、序列号、版本号和文件到服务器 - 接口:POST /gpt/update/server/upload - 参数说明: - description:描述(字符串,必填) - serialNumber:序列号(字符串,必填) - versionNumber:版本号(字符串,必填) - file:文件(zip包,必填) - 返回值: - 成功:{ code: 200, data: ..., message: '成功' } - 失败:{ code: 非200, message: '错误信息' } - 使用方法: 1. 打开首页,填写表单并选择文件,点击上传。 2. 上传成功/失败会有提示。 ### 2. 网络请求工具库 - 位置:src/utils/request.js - 功能:封装axios,提供统一的请求处理 - 特性: - 支持动态配置API基础URL - 支持请求重试 - 统一的错误处理 - 支持创建自定义实例 - 使用方法: ```javascript // 导入默认实例 import request from '@/utils/request' // 使用默认实例发送请求 request({ url: '/api/example', method: 'get', params: { id: 1 } }) // 导入工具函数 import { createInstance, setBaseURL, getBaseURL } from '@/utils/request' // 创建自定义实例 const customRequest = createInstance({ baseURL: 'https://api.example.com', timeout: 30000 }) // 设置全局baseURL setBaseURL('https://api.example.com') // 获取当前baseURL const currentBaseURL = getBaseURL() ``` ### 3. API配置演示 - 组件:src/views/components/ApiConfigDemo.vue - 功能:演示如何动态配置API基础URL - 使用方法: 1. 打开API配置演示页面 2. 输入新的API基础URL并点击更新 3. 上传更新包时可以选择使用自定义API地址 ## 开发 ```bash # 安装依赖 npm install # 启动开发服务器 npm run dev # 构建生产版本 npm run build ``` ## 环境变量配置 项目支持通过环境变量配置API地址,可以在以下文件中设置: - `.env.development`:开发环境配置 - `.env.production`:生产环境配置 环境变量示例: ``` VITE_API_BASE_URL=https://api.example.com ```