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
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
les paramètres sont épissés ensemble de manière épissée
post est défini dans les données
définir directement les paramètres dans les données à appeler