全栈的自我修养 ———— uniapp中封装api请求

api

js 复制代码
import request from '@/tools/request'
export function login(loginMessage) {
    return request({
        url: '/login',
        data: loginMessage,
        loading: true
    })
}

request

js 复制代码
// request
const urlArr = {
    'DEV': 'http://localhost:6060', // 开发
    'PRO': 'https://域名:6060', // 生产
}

let BASEURL = urlArr['DEV'] // 调整当前环境

export default item => {
    if (item.loading) {
        uni.showLoading({
            title: "加载中",
            mask: true
        });
    }
    return new Promise((resolve, reject) => {
        uni.request({
            url: BASEURL + item.url,
            method: item.method ? item.method : 'post',
            data: item.data,
            headers: item.headers ? item.headers : { "Content-Type": "application/json" },
            timeout: 20000,
            success(response) {
                resolve(response.data);
            },
            fail(err) {
                uni.showToast({
                    icon: "none",
                    title: '服务响应失败'
                });
                reject(err);
            },
            complete() {
                uni.hideLoading();
            }
        });
    })
};

使用

js 复制代码
import { login,sendCaptcha } from '@/api/login.js'
const res = await login(params)
相关推荐
兆子龙2 分钟前
Node.js ESM Loader Hooks 介绍:用 module.register 做转译、Import Map 与自定义解析
前端
四眼肥鱼3 分钟前
flutter 利用flutter_libserialport 实现SQ800 串口通信
前端·flutter
ZFSS3 分钟前
OpenAI Images Edits API 申请及使用
前端·人工智能
码路飞14 分钟前
GPT-5.3 Instant 终于学会好好说话了,顺手对比了下同天发布的 Gemini 3.1 Flash-Lite
java·javascript
Lee川15 分钟前
从回调地狱到同步之美:JavaScript异步编程的演进之路
javascript·面试
Lee川15 分钟前
从零构建AI对话应用:Vite脚手架搭建与API密钥安全实践
前端·程序员
进击的尘埃16 分钟前
WebSocket 长连接方案设计:从心跳保活到断线重连的生产级实践
javascript
允许部分打工人先富起来17 分钟前
在node项目中执行python脚本
前端·python·node.js
钟智强17 分钟前
Flutter引擎Android平台JNI层未验证指针转换漏洞
前端
骑着小黑马22 分钟前
Electron + Vue3 + AI 做了一个新闻生成器:从 0 到 1 的完整实战记录
前端·人工智能