公司前段时间研究跨端融合,发现有一款框架名叫hera,可以将微信小程序直接编译为native应用,没错,就是apk的那种安装包……
遂开始了研究……
因为之前有过vue的编码经验,而小程序又是mvvm的数据驱动型框架,上手相对还是比较快的。
此乃前言。
打开看了下官方文档,微信自带的http请求已经很简洁了,传入相应的参数和地址,还有回调,便能方便的完成请求。不过我本人不是很喜欢回调,再加上token等验证请求需要特定处理,便打算自己动手封装,操作实践一下。
说一下思路,创建Request类,类内声明相关属性与操作,例如get请求就是request类下的一个方法,在app.js引用后挂载到全局,即可方便优雅的调用。(ps:当初考虑到将请求方法当作参数传递,例如post,put,delete这些,这样Request就只用实现一个方法,但是会使参数列表太冗长,而且封装的方法对请求body和参数的处理有些繁琐,就分开写了,读者也可以自行实践)以下是代码实现。
在app.js下同级创建文件,命名为util.js,用以声明request
import {
INTERFACE
} from "./namespace.js"
class Request {
constructor() {
this.url = INTERFACE;
}
// params接受传入参数为对象/字符串,对象会以参数列表拼在url后,字符串则接在url之后
GET(url, param