小程序api接口请求类,接口联调就这么简单

发布于:2021-05-22 01:36:59


app.js 中配置需要的函数


//app.js
App({
    data:{
      imgurl: 'http://49.h5.org.cn',
      apiurl: 'http://49.h5.org.cn'
    },
    onLaunch: function() {

      var user = wx.getStorageSync('user') || []
      if (user.openid) {
        this.globalData = user;
      }
      
      this.winsub();
  
    },
    onShow:function(){
     
    },
    globalData: {
      userInfo: null,
      accesskey: '345erert3445345ertertertert',
      openid: '',
      token: ''
    },
    islogin: function(n) {
      // 登录验证,如果没有登录就跳转到登录页面
      // 如果验证openid已经存在,需要查询数据库中是否存在,如果数据库中不存在,则需要重新登录
      console.log('登录验证')
      var _this = this;
      if (!this.globalData.openid) {
        wx.navigateTo({
          url: '/pages/register/register'
        })
      }else{
        this.api('POST', '/GetData/islogin', {}, (res) => {
            //console.log(res)
            if(res.data.code==1){
              _this.globalData.openid = '';
              wx.navigateTo({
                url: '/pages/register/register'
              })
            }
        })
  
      }
    },
    /**
     * 封装wx.request请求
     * method: 请求方式
     * url: 请求地址
     * data: 要传递的参数
     * callback: 请求成功回调函数
     * errFun: 请求失败回调函数
     **/
    api: function(method, url, data, callback) {
      var c = Object.assign({
        key: this.globalData.accesskey,
        openid: this.globalData.openid
      }, data);
      wx.request({
        url: this.data.apiurl + url,
        method: method,
        data: c,
        header: {
          'content-type': method == 'GET' ? 'application/json' : 'application/x-www-form-urlencoded',
          // 'Accept': 'application/json',
          // 'content-type': 'application/json'
        },
        dataType: 'json',
        success: function(res) {
  
          callback(res);
  
        },
        fail: function(err) {
          wx.showToast({
            title: err,
            icon: 'none'
          })
        }
      })
    }
  })


接口具体使用方法


在进入一个页面的时候 更新请求


    onShow(){
        let _t = this;
        app.api('POST', '/GetData/index', {model:"collect",tid:1,isshow:1}, (res) => {
            console.log(res)
             _t.setData({imgUrls:res.data.data})
  
        })
    }


在一个页面中验证是否登录

下面的islogin会调用 app.js 中的对应的函数,如果openid存在证明是登录了,否则就跳转到登录页面登录获取。

onShow(){
    app.islogin()
}



觉得有用请点个赞吧!
0 513