uniapp 接口请求封装

根目录下创建 config目录 api.js request.js

// request.js
// 封装一个通用的网络请求函数  适当调整
function httpRequest(options) {
	const userToken = uni.getStorageSync('access_token').token;
	return new Promise((resolve, reject) => {
		uni.request({
			url: `${options.url}`,
			data: options.data || {},
			method: options.method || 'GET',
			header: options.header || {
				'Authorization': `Bearer ${userToken}`,
				'content-type': 'application/json'
			},
			success: function(res) {
				if (res.statusCode === 200) {
					resolve(res.data);
				} else {
					reject(res);
				}
			},
			fail: function(err) {
				reject(err);
			}
		});
	});
}

export default httpRequest;
// api.j
import httpRequest from './request.js';
// 定义API接口
const API = {
	// 示例接口,根据实际情况修改
	pulldata: `https://baidu.com/DataSync/pulldata?name=456&title=123`,
// 封装各种API请求函数
const apiService = {
	// 获取全部数据接口
	pulldata(params) {
		return httpRequest({
			url: API.pulldata,
			method: 'POST',
			data: params
		});
	}
};

export default apiService;

用法:在需要用的页面引入 import apiService from ‘…/…/config/api.js’

然后定义一个方法直接调用


 test1() {
	// 调用API函数
	apiService.pulldata({
			currversion: '',
		})
		.then(data => {
 			console.log('成功:', data);
			// 处理返回的数据
		})
		.catch(err => {
 			console.log('失败:', err);
			// 处理错误
		});
},
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在uni-app中封装通用api接口请求可以通过以下步骤进行: 1. 首先,在utils文件夹下创建一个request.js文件,用于封装请求方法和设置请求的基地址。 2. 在request.js文件中,可以使用export关键字导出一个基地址baseURL和一个封装请求函数request。 3. 在request函数中,使用uni.request方法发送网络请求,传入相应的参数,包括请求地址、请求方法、请求数据和请求头信息。 4. 在成功回调函数success中,可以根据后端接口返回的数据进行相应的处理。如果返回的code为1,表示请求成功,可以通过resolve方法返回数据给调用者。如果返回的code为401,表示授权过期或未登录,可以跳转到登录页面并清除本地缓存。如果不满足以上条件,可以通过reject方法返回错误信息给调用者。 5. 在失败回调函数fail中,可以通过reject方法返回接口请求失败的错误信息。 通过以上步骤,我们可以实现对uni-app中api接口请求封装,方便统一管理和调用。具体的代码实现可以参考上述引用的示例代码。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [uni-app接口请求封装](https://blog.csdn.net/Yi2008yi/article/details/131959224)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [uniapp 接口封装](https://blog.csdn.net/m0_46846526/article/details/126362687)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值