uniapp接口请求api封装,规范化调用

封装规范和vue中的差不多,都是统一封装成一个request对象,然后在api.js里面调用。

先创建一个utils文件夹,然后里面创建一个request.js,代码如下:

javascript 复制代码
export const baseURL = '基础url地址'

const request = (options) => {
	// 判断是不是完整的地址,不是的话,拼接上baseUrl
	let urlPath = ""
	if (options.url.indexOf("http") === -1) {
		urlPath = baseURL + options.url
	} else {
		urlPath = options.url
	}
	console.log("请求的url是:", urlPath);
	return new Promise((resolve, reject) => {
		uni.request({
			url: baseURL + options.url, //接口地址:前缀+方法中传入的地址
			method: options.method || 'GET', //请求方法:传入的方法或者默认是"GET"
			data: options.data || {}, //传递参数:传入的参数或者默认传递空集合
			header: {
				'token': uni.getStorageSync("token") || "" //自定义请求头信息
			},
			success: (res) => {
				// 成功返回
				console.log("返回数据:", res)
				resolve(res.data.response_data)
			},
			// 这里的接口请求,如果出现问题就输出接口请求失败
			fail: (err) => {
				console.log("请求错误:", err)
				reject(err)
			}
		})
	})
}

export default request

在api文件夹中封装对应的index.js文件,然后导入request对象:

javascript 复制代码
import request from '@/utils/request'

export default {
	getUUID(data) {
		console.log("getUUID");
		return request({
			url: '/user/wxapp',
			method: 'get',
			data,
		})
	},
	changeStatus(data) {
		return request({
			url: '/message/isReads',
			method: 'post',
			data,
		})
	},
	getMsgType(params) {
		return request({
			url: '/message/messageType',
			method: 'get',
			params,
		})
	},
	deleteMsg(data) {
		return request({
			url: '/message/delete',
			method: 'post',
			data,
		})
	},
}

在对应的vue或者react中引入并调用:

相关推荐
一只会跑会跳会发疯的猴子5 分钟前
Thinkphp6使用token+Validate验证防止表单重复提交
服务器·前端·javascript
Euphoria_111027 分钟前
开发积累总结
前端
柒七爱吃麻辣烫28 分钟前
npm修改镜像的教程,将npm镜像修改为国内地址增加下载速度
java·前端·npm·node.js·vue
moxiaoran575328 分钟前
uni-app学习笔记十二-vue3中组件传值(对象传值)
笔记·学习·uni-app
想回家的一天32 分钟前
本地环境下 前端突然端口占用问题 针对vscode
前端
小张快跑。1 小时前
【Vue3】(二)vue3语法详解:自定义泛型、生命周期、Hooks、路由
前端·vue.js·typescript
开开心心就好1 小时前
可增添功能的鼠标右键优化工具
前端·pdf·计算机外设·ocr·电脑·音视频·phpstorm
灿灿121381 小时前
npm、pnpm、yarn 各自优劣深度剖析
前端·javascript·npm·pnpm·yarn
Name:PLC2 小时前
vue3中使用watch
前端·javascript·vue.js
超级土豆粉2 小时前
ES6 扩展运算符与 Rest 参数
前端·ecmascript·es6