微信小程序-(十六)uni-app网络请求的封装

本文最后更新于:April 27, 2022 am

微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。也体现了“用完即走”的理念,用户不用关心是否安装太多应用的问题。应用将无处不在,随时可用,但又无需安装卸载。对于开发者而言,微信小程序开发门槛相对较低,难度不及APP,能够满足简单的基础应用,适合生活服务类线下商铺以及非刚需低频应用的转换。

目录

拿来即用的。已成功测试。

先建一个 request 的文件夹,再在其中建以下两个文件。

request.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// 全局请求封装
export default (url, method, params) => {
// const token = uni.getStorageSync('token');
uni.showLoading({
title: "加载中"
});
// if(!token ){
// // 执行没有登录的逻辑

// return;
// }
return new Promise((resolve, reject) => {
wx.request({
url: "https://www.uinav.com/api" + url,
method: method,
header: method == 'get' ? {'token': token,'X-Requested-With': 'XMLHttpRequest',"Accept": "application/json","Content-Type": "application/json; charset=UTF-8"} : {'token': token,'X-Requested-With': 'XMLHttpRequest','Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'},

// header: {
// token: token
// },
data: {
...params
},
success(res) {
resolve(res.data);
},
fail(err) {
reject(err);
},
complete() {
uni.hideLoading();
}
});
});
};

封装api.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import request from "./request.js"

export default {
//test
getSwiper(params){
return request("/public/v1/home/swiperdata","GET",params);
},

// 密码登录
passwordLogin(params) {
return request("/platform/metadata/logon", "GET", params)
},

// 短信登录
noteLogin(params) {
return request("/platform/metadata/login", "GET", params)
},

// 获取验证码:用于短信登陆、密码找回、用户注销
getAuthCode(params) {
return request("/platform/metadata/sms", "GET", params)
},

// 获取注册账号验证码
getRegistAuthCode(params) {
return request("/platform/metadata/sms1", "GET", params)
},

// 登录者信息
getMyInfo(params) {
return request("/platform/metadata/bindinfo", "GET", params)
},

// 注册账号
registerAccount(params) {
return request("/platform/metadata/register", "GET", params)
},

// 找回密码
retrievePassword(params) {
return request("/platform/metadata/back", "GET", params)
},

// 注销账号
offAccount(params) {
return request("/platform/metadata/cancel", "GET", params)
},

}

使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<template>
<view>
Home
</view>
</template>

<script>
import api from '../../request/api.js'
export default {
data() {
return {
list:[]
};
},
onLoad(){
this.getList()
},
methods:{
getList(){
api.getSwiper() //直接调用封装的api,有参可以传参
.then(res=>{
// uni.setStorageSync('token',res.token)
console.log(res)
}).catch(err=>{
console.log(err)
})
}
}
}
</script>

<style lang="scss">

</style>