
一、在pages同级创建request文件夹 在此文件夹下创建一个indexjs文件夹 在此文件夹内写入封装的api
const request = (method,url,params) => { // method (请求方式) url (请求的路径) params (请求的参数)
return new Promise((resolve,reject) => { // 创建一个promise函数
let baseUrl = "公共url"
unishowLoading({ // 添加加载动画
title: '加载中'
});
unirequest({ // 发送请求
url: baseUrl + url, // url 形参就是传入的地址
data: params params:'', // 传入的请求参数
method: method, // 传入的请求方式
success: res => { // 成功的函数
resolve(resdata);
unihideLoading();
},
fail: err => { // 失败的函数
reject(err);
unihideLoading();
}
});
})
}
const api = {
get: (url,params) => request("GET",url,params),
post: (url,params) => request("POST",url,params)
}
export default api; // 抛出接口
二、在request 文件目录下 创建一个 home文件夹 在home 文件夹内新建indexjs文件
// 所有的首页的请求 ,都放在这里维护
import api from '/indexjs';
export const get = params => apiget('路径',params); // get请求
export const post = params => apipost('路径',params); // post请求
三、在所需要请求数据的页面内
import 请求名 from '文件路径';
1、wxrequest() 发起 >
1、在安全方面
Post请求更安全,get请求的是静态资源,会缓存,如果你是数据的话,就无法缓存下来。
2、在数据类型方面
post请求发送的数据更大且能发送数据类型比较多,,get请求有url长度限制,只能发送ASCII字符。
3、在传输方面
get请求参数通过url传递,,post请求放在request body中传递。
4、在TCP数据包方面
ost请求产生两个TCP数据包,get请求,浏览器会把>
>
4xx:客户端错误
400 Bad Request:客户端请求有语法错误,服务器无法理解。
一般来说,原因都是提交的字段类型、数据格式的问题
1)前端提交数据的字段名称或者是字段类型和后台的实体类不一致,导致无法封装;
2)前端提交的到后台的数据应该是json字符串类型,而前端没有将对象转化为字符串类型;
这两种的解决方案:
1)对照字段名称,类型保证一致性
2)使用stringify将前端传递的对象转化为字符串 data: JSONstringify(param) ;
因为在postman上可以调通,所以不是上述原因,而且因为后台要求,这次的参数全部拼接在url上。然后就发现原因了,这次的请求拼接为 >
以上就是关于小程序中封装api请求全部的内容,包括:小程序中封装api请求、wx.request()方法、get请求和post请求区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)