美文网首页
uni-app请求方法的封装

uni-app请求方法的封装

作者: 哒哒哒哒da | 来源:发表于2021-07-19 09:08 被阅读0次
export const baseUrl = 'http://xxx.xx.xxx:8080'
// 获取Token
function getToken() {
    try {
        const token = uni.getStorageSync('token');
        if (token) {
            return token
        } else {
            return ''
        }
    } catch (e) {
        console.log(e)
    }
}

// 获取请求头
function getHeaders() {
    let token = getToken()
    let header = {
        "token": token,
        "Content-Type": "application/json", //根据自己的数据类型
        // "Content-Type":"application/x-www-form-urlencoded",
    }
    return header
}

let request = function(data) {
    data.method = data.method.toUpperCase()
    if (!['GET', 'POST'].includes(data.method)) {
        uni.showToast({
            title: `暂不支持的请求方式: ${data.method}`,
            icon: 'none'
        });
        return
    }

    return new Promise((resolve, reject) => {
        uni.request({
            url: baseUrl + data.url,
            method: data.method,
            data: data.params,
            header: getHeaders(),
        }).then(res => {
            switch (res[1].statusCode) {
                case 200:
                    resolve(res[1])
                    break
                default:
                    reject(res)
            }
        }).catch(
            (response) => {
                reject(response)
            }
        )
    })
}

export default  request;

import request from '../../common/js/util/request'

export function getPageSet() {
    return request({
        url: '/system/xxxx',
        method: 'post',
    })
}
<script>
import { getPageSet } from './api.js';
export default {
    methods: {
        getData() {
            uni.showLoading({
                title: '加载中'
            });
            getPageSet().then(res => {
                if (res.statusCode == 200) {
                    uni.hideLoading();
                }
            });
        }
    }
};
</script>

相关文章

网友评论

      本文标题:uni-app请求方法的封装

      本文链接:https://www.haomeiwen.com/subject/mvebpltx.html