HomeLease/api
2025-08-19 11:58:06 +08:00
..
article 清理多余appid参数 2025-08-19 09:44:40 +08:00
auth 清理多余appid参数 2025-08-19 09:44:40 +08:00
banner 清理多余appid参数 2025-08-19 09:44:40 +08:00
device 清理多余appid参数 2025-08-19 09:44:40 +08:00
lease 获取设备和套餐 2025-08-19 10:11:19 +08:00
user 个人中心页面,收支数据渲染 2025-08-19 11:58:06 +08:00
index.js 获取头像和姓名,昵称 2025-08-19 11:54:07 +08:00
README.md 获取设备和套餐 2025-08-19 10:11:19 +08:00

API 模块使用说明

概述

本项目使用统一的API请求工具 @/utils/request.js所有API请求都通过该工具进行无需重复配置基地址和请求头。

目录结构

api/
├── index.js          # API模块统一导出
├── lease/            # 租赁相关API
│   └── lease.js
├── device/           # 设备相关API
│   └── device.js
├── banner/           # 轮播图相关API
│   └── banner.js
├── article/          # 文章相关API
│   └── article.js
└── auth/             # 认证相关API
    └── auth.js

使用方法

1. 导入API方法

// 方式1从具体模块导入
import { getDeviceTypes, getPeriodPackages } from '@/api/lease/lease.js'

// 方式2从统一入口导入
import { getDeviceTypes, getPeriodPackages } from '@/api/index.js'

2. 在组件中使用

export default {
  methods: {
    async fetchData() {
      try {
        const response = await getDeviceTypes()
        
        if (response.code === 200) {
          this.deviceTypes = response.data
        } else {
          throw new Error(response.message || '请求失败')
        }
      } catch (error) {
        console.error('获取数据失败:', error)
        uni.showToast({
          title: error.message || '获取数据失败',
          icon: 'error',
        })
      }
    }
  }
}

API方法命名规范

  • 获取列表:getXxxList
  • 获取详情:getXxxDetail
  • 创建:createXxx
  • 更新:updateXxx
  • 删除:deleteXxx

请求工具特性

自动处理

  • 基地址配置
  • 请求头设置
  • Token管理
  • Loading状态
  • 错误处理
  • 超时处理

配置选项

request({
  url: '/api/endpoint',
  method: 'GET',
  params: { id: 1 },
  loadingText: '加载中...',    // 自定义loading文本
  showLoading: true,          // 是否显示loading
  timeout: 60000,            // 超时时间
  noToken: false,            // 是否需要token
})

环境配置

请求工具会根据当前环境自动选择对应的配置:

  • 开发环境http://192.168.2.114:4601
  • 体验版http://192.168.2.114:4601
  • 正式版http://192.168.2.114:4601

错误处理

所有API请求都会自动处理以下错误

  • 401登录过期自动跳转登录页
  • 403权限不足
  • 404资源不存在
  • 500服务器错误
  • 网络错误:超时、连接失败等

注意事项

  1. 方法名冲突避免页面方法名与API方法名相同建议使用别名导入
  2. Loading管理请求工具已内置loading管理无需手动处理
  3. 错误提示:统一使用 uni.showToast 显示错误信息
  4. Token处理开发环境支持临时token生产环境使用真实token