WeChatアプレットwx.requestパッケージリクエストの詳細な説明

ここに画像の説明を挿入
一般的なカプセル化されたリクエストの場合、utilsフォルダーのserver.jsファイルを作成できます。

// 数据请求 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,
}

次に、必要に応じて呼び出します。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
PSを参照してください。後で電話をかけるときに、取得して投稿できます。

これはuniappのパッケージです

ここに画像の説明を挿入

https://blog.csdn.net/qq_42894622/article/details/90070533
これは、Content-Typeで指定されたパラメーターのいくつかの形式のリファレンスです。

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

リクエストヘッダーのパラメータ

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

合格方法

get post
getは直接スプライシング方法であり
ここに画像の説明を挿入
、パラメーターはスプライシング方法で一緒にスプライシングされます

postはデータで定義され
ここに画像の説明を挿入
、呼び出すデータのパラメータを直接定義します

おすすめ

転載: blog.csdn.net/m0_53912016/article/details/114997250