拾光记录
218个文档 导航 作者 Gitee
随笔记录4
Hexo博客:基础使用Hexo博客:Next主题Hexo博客:Next进阶使用Hexo博客:Next高级配置
前端知识4
基础知识17
Vue框架19
UniApp14
微信小程序1
Java编程6
Java基础15
SpringBoot31
SpringMVC18
MyBatis9
SpringCloud15
中间件2
数据库4
MySQL13
Redis8
MongoDB10
其他数据库1
Python编程6
Python基础知识Python语法yolo目标检测OpenCV的使用及树莓派平台condauv管理工具
Linux12
Linux常用命令Jar启动脚本VirtualBox安装CentOSVirtualBox安装Ubuntu树莓派安装及使用frp内网穿透ArchLinux:基础系统安装ArchLInux:图形化界面安装ArchLinux:常用软件ArchLinux:深度优化ArchLinux:NiriArchLinux:模块记录
软件工具12
IDEAGitMavenGradleNginx安装Nginx配置JMeter压测OllamaRustFSPicGoVSCodeDocker
创意设计2
Blender:入门知识UI设计基础知识
AI相关9
Claude CodeHermes AgentOpenAI基本使用OpenAI工具调用OpenAI记忆管理OpenAI推理执行OpenAI开发框架Langchainllama.cpp

个人封装示例

该方式主要是解决统一请求地址、函数中不干扰this问题

import Vue from 'vue'
let api = Vue.prototype.baseUrl


let user = uni.getStorageSync('userData')
let uid = ''
if(user) {
  uid = user.userId
}

export default function request(url, method = 'GET', params = {}, successFun, failFun) {
  url = api + url
  uni.request({
    url,
    data: params,
    method,
    header: {
      uid: uid
    },
    success(res) {
      console.log(res);
      successFun(res.data)
    },
    fail(err) {
      failFun(err)
    }
  })
}

接口地址放在了main.js

// Vue.prototype.baseUrl = 'https://fanmr.cn/handiness'
Vue.prototype.baseUrl = 'http://192.168.100.8:18090'

使用方式

import httpUtil from "../../common/httpUtil.js"

httpUtil('/app/update/last', 'POST', {}, (res) => {
  console.log('成功', res);
}, (err) => {
  console.log('失败', err);
  this.$refs.uToast.show({message:'请求失败'})
})

文件上传(form-data)

// 获取头像
onChooseAvatar(e) {
  // 上传头像到服务器
  const tempFilePath = e.detail.avatarUrl;
  let that = this
  wx.uploadFile({
    url: that.baseUrl + '/uploadFile',
    filePath: tempFilePath,
    name: 'file',
    header: {
      'content-type': 'multipart/form-data',
    },
    success(res) {
      let resData = JSON.parse(res.data)
      console.log(resData);
      that.info.avatar = resData.data
      that.avatarUrl = that.baseUrl + that.info.avatar
    },
    fail(error) {
      console.log('upload failed', error);
    }
  });
个人封装示例文件上传(form-data)