小新的笔记 我的期望是想确定因为我生活在这个世界上,才使这个世界变得好了一些。——林肯
博主 小新的笔记
粤ICP备2024299964号博主 2024年10月28日 在线自豪地使用 Typecho 建站搭配使用 🌻Sunny 主题当前在线 3 人
歌曲封面 未知作品

粤ICP备2024299964号

网站已运行 1 年 101 天 15 小时 55 分

Powered by Typecho & Sunny

4 online · 54 ms

Title

微信小程序封装一个简单的请求

小新

·

·

1767次阅读
前端
Article
⚠️ 本文最后更新于2024年08月14日,已经过了473天没有更新,若内容或图片失效,请留言反馈

最近因为项目需要,自己也要写小程序了。看到别人写的代码很简洁,看看自己频繁的写wx.request(),于是就想封装一个自己使用的请求。

新建一个文件夹

♾️ text 代码:
util

在这个文件夹里面新建一个文件

♾️ text 代码:
httputil.js

编写这个文件

♾️ text 代码:

//控制loading是因为有时一个页面会请求多个接口,出现多个loading体验不是很好

function get(url, params, onSuccess, loadding = true){
    request(url, params, "GET", onSuccess, loadding);
}

function post(url, params, onSuccess, loadding = true){
    request(url, params, "POST", onSuccess, loadding);
}

function request(url, params = {}, method = 'GET', onSuccess, loadding = true) {
    if (loadding==true) {
        wx.showLoading({
            title: "加载中...",
        })
    };
    wx.request({
        url: get_url(url),
        data: params,
        method: method,
        header: {
            'content-type': 'application/json',
            'token' : wx.getStorageSync('token')
        },
        success: function(res) {
            if (loadding==true) {
                wx.hideLoading();
            }
            if (res.data) {
                if (res.statusCode == 200) {
                    onSuccess(res.data);
                } else {
                    console.log(res);
                    wx.showToast({
                        title: '请求失败',
                        icon: 'none',
                        duration: 3000
                    });
                }
            }
        },
        fail: function(error) {
            console.log(error);
            wx.showToast({
                title: error.errMsg,
                icon: 'none',
                duration: 3000
            });
        }
    })
}

function get_url(url) {
    var base_url = "https://jy.dzxcx888.com/";
    return base_url + url;
}


//提供给外部使用
module.exports = {
    post: post,
    get: get,
}

外部调用

♾️ text 代码:
//引入
var http = require('../../util/httputil.js');

http.get('api/Index/index', {}, function(res){
    console.log(res);
}, true);

http.post('api/Index/index', {}, function(res){
    console.log(res);
}, true);
现在已有 1 条评论,1 人点赞
小新

广告

页底广告 页底广告
Author:小新
作者
微信小程序封装一个简单的请求
当前文章累计共 2029 字,阅读大概需要 1 分钟。
修改Mac启动台图标大小
2024年8月24日 · 3评论
今天我23岁
2024年8月14日 · 4评论
PHP小程序汇聚支付简单封装
2024年8月14日 · 0评论
Comment:共1条
发表
  1. 头像
    @
    怎么收藏这篇文章?
    · Windows · Chrome

    👍

    💖

    💯

    💦

    😄

    🪙

    👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
搜 索 消 息 足 迹
你还不曾留言过..
你还不曾留下足迹..
博主 不再显示
博主