前言:
使用小程序有段时间了,看到很多的小程序请求的封装,自己也尝试封装了一套自己常用的请求方法,虽不能说十分完美,但希望能给各位看官提供一定的帮助。。。。。
封装文件:
Http.js
const API_URL = "请求域名";
function Get(url, params) {
let promise = new Promise(function (resolve, reject) {
wx.request({
url: API_URL+url,
data: params,
method: 'GET',
header: { 'Content-Type': 'application/json'},
success: res => {
resolve(res.data);
},
fail: res => {
reject(res.data)
}
})
});
return promise
}
function Post(url, params){
let promise = new Promise(function (resolve, reject) {
wx.request({
url: API_URL +url,
data: params,
method: 'POST',
header: { 'content-Type': 'application/x-www-form-urlencoded' },
success: res => {
resolve(res.data);
},
fail: res => {
reject(res.data)
}
})
});
return promise
}
function JsonPost(url, params){
let promise = new Promise(function (resolve, reject) {
wx.request({
url: API_URL +url,
data: JSON.stringify(params),
method: 'POST',
header: { 'Content-Type': 'application/json'},
success: res => {
resolve(res.data);
},
fail: res => {
reject(res.data);
}
})
});
return promise
}
module.exports = {
Get,
Post,
JsonPost
}
页面调用:
import Http from '../utils/http.js'; //小程序支持ES6语法
Page({
data:{
} ,
onLoad( options){
let url = 'user',
params = {
id : 1
};
Http.Get(url,params)
.then(res=>{
if(res.code===200){
doSomeThing(res) //请求到的数据处理操作
}else{
wx.showToast({
icon:'none',
title:'网络错误'
})
}
})
.catch(err=>{
wx.showToast({
icon:'none',
title:'网络错误'
})
})
}
)}
后记:
更多的改进之处,希望大家指证!!!