2021最新微信小程序请求封装以及api统一管理

前言

最近在重构公司小程序,看到了重构前的小程序的统一接口管理只能是用“眼花缭乱”来形容了,令我没想到的是我试着搜索了一下小程序请求api管理,然而大多数都是几年前的文章,封装的五花八门,眼花缭乱。所以重构小程序第一步,封装请求及统一api管理,就像在vue项目中管理api那样。
之前是这样的,简短的一个地址被拆成了几个变量加来加去???及不优雅。
在这里插入图片描述

正文开始

  1. 小程序项目根目录创建http文件夹,文件夹中新建http.js,新建api.js 这两个文件。
    在这里插入图片描述

2.小程序http.js文件中配置基地址,新建request函数,返回一个promise对象,导出函数

//  配置基地址
const baseURl = 'http://192.168.0.117:6007/' //  本地服务器
function request({
	url='',
	method='GET',
	header={ "content-type": "application/json" },
	data={}
}) {
	return new Promise((resolve, reject) => {
		wx.showLoading({
			title: '加载中...'
		})
		wx.request({
			url: baseURl + url,
			method: method,
			data:data,
			header:header,
			timeout:5000,
			//  成功回调
			success: res => {
				wx.hideLoading()
				resolve(res.data)
			},
			//  错误回调
			fail: err => {
				wx.hideLoading()
				
				wx.showToast({
					title: '网络错误!',
					icon:'error',
					duration: 2000
				})
				reject(err)

				console.log('cuowy');
			},
			//  请求完成回调
			complete: () => {
				// wx.hideLoading()
			}
		});
	})
}

export default request

3.api.js文件中,导入http.js文件,为每个请求创建请求方法,后期根据自己接口多的话可以api文件拆分,将不同模块不同类型的请求归类拆分到不同的文件夹,便于后期维护。

import request from './http.js'

//  登录
export function login (data) {
	return request({
		url:'/user/login',
		data
	})
}
// 注册
export function register (data) {
	return request({
		url:'/user/register',
		method:'POST',
		data
	})
}
// 重置密码
export function forgetPassword (data) {
	return request({
		url:'/user/forgetPassword',
		method:'POST',
		data
	})
}

4.页面中按需引入api请求方法,async await调用,这样更大的一个好处就是当前页面中使用了那些api一目了然。

//获取应用实例
const app = getApp();
import { login } from '../../http/api'
Page({

	/**
	 * 页面的初始数据
	 */
	data: {
		statusBarHeight: app.globalData.statusBarHeight, //导航栏的高度
		versions: app.globalData.versions, //  版本号
		phone: "", //  手机号
		password: "", //  密码
	},

	/**
	 * 生命周期函数--监听页面加载
	 */
	onLoad: function (options) {
		
	},
	//  登录
	async getLogin(params,type='default') {
		//  此处调用登录请求
		let res = await login(params)
		if (res.code !== 1000) {
			//  请求失败处理
		}
		//  处理请求成功的逻辑
		//  跳转主页 延时2秒
		redirectTo('index', {}, 2000)
	},
	
})

大概就是这样了!

ok跑路!

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
微信小程序API封装是指将微信小程序官方提供的各种功能接口进行封装,以方便开发者调用和使用。随着微信小程序的不断发展,其API封装也不断更新,以满足开发者对功能需求的更多期待。 目前,微信小程序API封装已经非常齐全,涵盖了各个方面的功能需求。一方面,它包括了基础功能的封装,如页面路由、数据缓存、事件处理等,使开发者能够更加方便地进行页面跳转、本地数据存储和事件绑定等操作。 另一方面,微信小程序API封装也包括了丰富的界面组件和交互能力的封装,如模态框、滑动视图、下拉刷新等,使开发者能够快速构建各类交互丰富的小程序界面。 此外,微信小程序API封装还包括了网络请求、位置信息、支付功能等重要能力的封装,开发者可以通过调用相应接口,实现网络数据的获取、用户位置的获取和支付功能的实现等。 随着微信小程序的不断升级和功能增加,其API封装也会持续更新。为了更好地支持开发者的需求,微信团队也会提供最新API文档和示例代码,使开发者能够更好地了解和使用微信小程序的各项功能。 总之,微信小程序API封装非常齐全,能够满足绝大部分开发者的需求,并且会随着新功能的增加而不断更新。开发者只需要熟悉官方提供的API文档,就可以开发出功能丰富、交互流畅的微信小程序

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值