当前位置: 首页 > news >正文

uniapp 简单封装接口请求

环境配置:utils/env.js

let BASE_URL
// 开发环境
if (process.env.NODE_ENV === 'development') {BASE_URL = 'http://192.168.0.135:21010'
}
// 生产环境
else {BASE_URL = ''
}
export default {BASE_URL
}

接口封装:utils/request.js

import env from './env.js'
const request = (options) => {// 弹出加载弹窗uni.showLoading({title: '加载中...'});return new Promise((resolve, reject) => {// 设置请求头const header = {...options.header}// 查询是否存在token,并添加请求头if (uni.getStorageSync('token')) header['Authorization'] = `Bearer ${uni.getStorageSync('token')}`uni.request({url: env.BASE_URL + options.url,method: options.method,data: options.data,header,success: (res) => {console.log("请求信息: ", env.BASE_URL + options.url, options.data);console.log("接口返回: ", res.data);switch (res.data.code) {case 401:uni.clearStorageSync()uni.showToast({title: '登录状态失效,请重新登录',icon: 'none',});uni.navigateTo({url: '/pages/login',})break;case 200:resolve(res.data);break;default:uni.showToast({title: '未知错误,请联系管理员',icon: 'none'});reject(res.data)}},fail: (err) => {uni.showToast({title: '请求超时,请稍后重试!',icon: 'none'});reject(err)},})uni.hideLoading();})
}
export default request

设置接口:api/login.js

import request from '@/utils/request.js';/*** 登录*/
export const login = (data) => {return request({url: '/login',method: 'POST',data})
}/*** 用户信息*/
export const getInfo = (data) => {return request({url: '/getInfo',method: 'GET',data})
}

接口使用:

import { login, getInfo } from '@/api/login.js';login(params).then((res) => {})
http://www.hskmm.com/?act=detail&tid=27231

相关文章:

  • 【SPIE出版】第五届算法、高性能计算与人工智能国际学术会议(AHPCAI 2025)
  • 深入解析:recipes中声明 DEPENDS += “virtual/kernel“ 的效果
  • 2025 防洪板源头厂家最新推荐榜单:铝合金 / 移动 / 应急款精准测评,稳定性能品牌优选指南
  • 完整教程:【复习】计网每日一题--PPP链路
  • Ubuntu安装 IDEA
  • 精密星历内插的MATLAB代码实现
  • .                    当项目规模失控时:架构师的“止损”之道
  • 2025 年护栏厂家最新推荐排行榜:涵盖锌钢防撞桥梁交通市政不锈钢波形围墙道路护栏优质企业锌钢/防撞/桥梁/交通/市政/不锈钢/波形护栏厂家推荐
  • .                                  为什么资深开发者越来越少写代码?
  • .                                  性能优化的尽头,是洞察力
  • 遗传算法的多车场车辆路径问题求解
  • 元数据提供器(IMetadataDetailsProvider)是什么
  • 2025 年清理工具应用程序品牌最新推荐榜单:精选适配 macOS 系统的优质系统优化工具,助力高效管理 icloud 与谷歌云储存空间苹果系统清理/云储存清理工具公司推荐
  • Claude Sonnet 4.5 发布,程序员原地起飞!!
  • 2025 年上海商用净水器公司实力最新推荐权威排行榜:深度剖析学校 / 医院 / 写字楼 / 工厂 / 事业单位优质之选
  • cursor 开了 pro 没办法使用 claude 模型
  • 从0开始使用LabVIEW操作数据采集卡-概述和新建新建项目
  • 当开发者学会拒绝
  • 日志不是垃圾:它是系统的生命线
  • 堆空间的GC和元空间的GC
  • 2025 涿州装修公司最新推荐权威榜:高性价比品牌精选及靠谱选择指南
  • builder.Services.AddSingleton(HtmlEncoder.Create(UnicodeRanges.All))了解
  • 从写代码到造系统:一个开发者的自我进化
  • 排查服务器磁盘IO瓶颈脚本 - 实践
  • 2025 年板材源头厂家最新推荐排行榜:聚焦 ENF 级环保、零醛添加等优质板材,精选实力企业助您精准选购零醛添加/装修/生态板/指接板/直拼板板材PET实木板材厂家推荐
  • 数据采集传输卡:430-基于RFSOC的8路5G ADC和8路10G的DAC PCIe卡
  • 微软官方卸载Office工具下载-微软官方的office卸载工具
  • 高清视频显微镜厂家推荐榜:偏光、测量、工业显微镜多场景应用分析
  • 2025大中型企业CRM选型指南:从核心功能到解决方案全解析 - SaaS软件
  • Motion Bro 必备AE/PR特效预设脚本全新汉化版本支持Win/Mac安装教程