微信小程序网络请求封装

210 阅读1分钟

创建request.js文件

/**
 * 
 * @param {String} url 网络请求的url
 * @param {String} method 请求方式
 * @param {Object} params  请求参数
 * @param {String} message  进度条的提示信息
 * @param {Fn} success  成功的回调函数
 * @param {Fn} fail   失败的回调
 */
// development 开发环境
// test测试环境
// formal正式环境
const development = "http://*******.com";
const test = '';
const formal = '';
const basurl = development; //设置请求的网址

function requestLoading(url, method, params, message, success, fail) {
    console.log(params)
    wx.showNavigationBarLoading()
    if (message != "") {
        wx.showLoading({
            title: message,
        })
    }
    wx.request({
        url: basurl + url,
        data: params,
        header: {
            'Content-Type': 'application/json',
            // 'content-type': 'application/x-www-form-urlencoded'
        },
        method: method,
        success: function(res) {
            //console.log(res.data)
            wx.hideNavigationBarLoading()
            if (message != "") {
                wx.hideLoading()
            }
            //在这可以判断返回值
            success(res.data)
        },
        fail: function(err) {
            wx.hideNavigationBarLoading()
            if (message != "") {
                wx.hideLoading()
            }
            fail(err)
        },
        complete: function(res) {

        },
    })
}
function request(url, method, params, success, fail) {
    this.requestLoading(url, method, params, "", success, fail)
}
//导出
module.exports = {
    request: request,
    requestLoading: requestLoading
}

使用方式

需要引入的页面js文件

    var network = require("../../utils/request.js")
    import network from '../../utils/request.js';
    
    <!--两种方式都可-->
    <!--方法内调用-->
    network.requestLoading(url,"GET",'加载中请稍后.....',
        function(res) {
            //请求成功的回调
            console.log(res)
        },
        function(err) {
            //请求失败的回调
            console.log(err)
        }
    )