Explication détaillée de la demande de package wx.request de l'applet WeChat

Insérez la description de l'image ici
Pour les requêtes encapsulées générales, vous pouvez créer des fichiers dans server.js dans le dossier utils

// 数据请求 wx.request
// const url='https://cnodejs.org/api/v1'
var sendRrquest = function(url, method, data, header) {
    
    
  var status = true;

  var promise = new Promise(function(resolve, reject) {
    
    
      wx.getNetworkType({
    
    
          success: function(res) {
    
    
              // 返回网络类型2g,3g,4g,wifi, none, unknown
              var networkType = res.networkType
              if (networkType == "none") {
    
    
                  wx.hideLoading();
                  //没有网络连接
                  wx.showModal({
    
    
                      title: '提示',
                      content: '网络连接失败,请检查您的网络设置',
                      showCancel: false,
                      success: function(res) {
    
    
                          if (res.confirm) {
    
    
                              //返回res.confirm为true时,表示用户点击确定按钮
                              console.log('表示用户点击确定按钮')

                          }
                      }
                  })
                  status = false;
              } else if (networkType == "unknown") {
    
    
                  wx.hideLoading();
                  //未知的网络类型
                  wx.showModal({
    
    
                      title: '提示',
                      content: '未知的网络类型,请检查您的网络设置',
                      showCancel: false,
                      success: function(res) {
    
    
                          if (res.confirm) {
    
    
                              //返回res.confirm为true时,表示用户点击确定按钮
                              console.log('表示用户点击确定按钮')
                          }
                      }
                  })
                  status = false;
              } else {
    
    
                  wx.request({
    
    
                      url: url,
                      data: data,
                      method: method,
                      header: header,
                      success: resolve,
                      fail: reject
                  })

              }
          }
      })
      return status
  });
  return promise;
};


// header 头部
function reqHeader() {
    
    
  var header = {
    
    
      'X-Xbyjshop-Token': wx.getStorageSync('token'),
      'content-type': 'application/json/x-www-form-urlencoded; charset=utf-8',
      'cookie': wx.getStorageSync("sessionid"),
  }
  return header
}



// 把方法暴露接口出来供别的页面使用[前面为名字,后面为方法]
module.exports = {
    
    
  reqHeader: reqHeader,
  sendRrquest: sendRrquest,
}

Appelez-le ensuite si nécessaire. Voici l'interface fournie par cnodejs

var util = require('../../utils/server'),
header = util.reqHeader();  
Page({
    
    

        /**
         * 页面的初始数据
         */
        data: {
    
    

        },

        /**
         * 生命周期函数--监听页面加载
         */
        onLoad: function (options) {
    
    
                util.sendRrquest('https://cnodejs.org/api/v1/topics', 'GET','data', header)
                        .then(function (response) {
    
    
                                console.log(response)

                        }, function (error) {
    
    
                                console.log(error);
                        })
        },

        /**
         * 生命周期函数--监听页面初次渲染完成
         */
        onReady: function () {
    
    

        },

        /**
         * 生命周期函数--监听页面显示
         */
        onShow: function () {
    
    

        },

        /**
         * 生命周期函数--监听页面隐藏
         */
        onHide: function () {
    
    

        },

        /**
         * 生命周期函数--监听页面卸载
         */
        onUnload: function () {
    
    

        },

        /**
         * 页面相关事件处理函数--监听用户下拉动作
         */
        onPullDownRefresh: function () {
    
    

        },

        /**
         * 页面上拉触底事件的处理函数
         */
        onReachBottom: function () {
    
    

        },

        /**
         * 用户点击右上角分享
         */
        onShareAppMessage: function () {
    
    

        }
})

https://www.jianshu.com/p/2e80c96ce712 Reportez-vous à
PS, lorsque vous passez un appel plus tard, vous pouvez obtenir et poster

Ceci est le package de uniapp

Insérez la description de l'image ici

https://blog.csdn.net/qq_42894622/article/details/90070533
Ceci est une référence pour plusieurs formats de paramètres spécifiés Content-Type

form-data、x-www-form-urlencoded、application/json、json

Paramètres de l'en-tête de la demande

'X-Xbyjshop-Token': wx.getStorageSync('token'),//带token
  'content-type': 'application/json/x-www-form-urlencoded; charset=utf-8',//带指定参数的格式
'cookie': wx.getStorageSync("sessionid"),//带cookie参数

Méthode de passage

get post
get est une méthode d'épissage directe, et
Insérez la description de l'image ici
les paramètres sont épissés ensemble de manière épissée

post est défini dans les données
Insérez la description de l'image ici
définir directement les paramètres dans les données à appeler

Je suppose que tu aimes

Origine blog.csdn.net/m0_53912016/article/details/114997250
conseillé
Classement