美文网首页muiuni-app
uni-app封装 uni.request,附带简单的拦截功能

uni-app封装 uni.request,附带简单的拦截功能

作者: Rogi | 来源:发表于2019-08-17 14:33 被阅读0次

    做项目的时候,请求的时候都得调用一次uni.request,而且每次都要验证返回过来的code码 === 200。
    最最最最最最最最最最最最最重要!!!每次都得添加头部设置code: uni.getStorageSync("sessionid")。

    header: {
        'content-type': 'application/json',
        'cookie': uni.getStorageSync("sessionid")
    }
    

    由于本人经常忘记加,经常会麻烦后端小哥帮我看接口是不是有问题(还好后端小哥没有捶死我。
    以下是封装的request

    // 参数: url:请求地址
    // param:请求参数
    // way:请求方式
    // res:回调函数
    function urlRequest(url, param, way, res) {
        // 获取自定义的code
        let code = uni.getStorageSync('code')
        // 进行请求
        uni.request({
            url: url,
            data: JSON.stringify(Object.assign(param)),
            header: {
                'code': code || '你个臭猪,又忘记设置code啦!!!!!',
                'Accept': 'application/json',
                'Content-Type': 'application/json',
            },
            // 获取设置请求方式
            method: way,
            success: (data) => {
                if (data.data.code === 200) {
                    // 设置返回的数据
                    res(data.data)
                } else {
                    // 干一些事情
                }
            }
        });
    }
     
    export default {
        urlRequest: function(url, param, way, res) {
            // 把函数放回出去
            return urlRequest(url, param, way, res);
        }
    }
    

    调用

    import request from '@/api/index.js'
    request.urlRequest(
        '请求地址',
        {},
        'POST',
        function (res) {
            console.log(res)
        }
    )
    

    相关文章

      网友评论

        本文标题:uni-app封装 uni.request,附带简单的拦截功能

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