在微信小程序开发中,http请求是一个非常重要的环节。虽然腾讯官方提供了相应的Api,但是如果直接使用这些Api的话,每次请求都非常麻烦。
在实战中,需要首先将其包装一下,让其变得更好用。
比如,我的请求的代码是这样写的:
            
            
              javascript
              
              
            
          
          const reload = () => {
		MyAPI.getDevices()
		.then(res => {
			deviceList.value = res.list
		}).catch(err => {
			console.warning('err', err)
		})
	}
        在页面中只需一个简单的MyAPI.getDevices(),就可以完成http的请求。是不是很简单呢?
再仔细看,它可是进行了网络请求的哦,还有,请求的时候,还顺带进行了身份认证的哦。
如果请求成功了,那么就会得到结果res,在res中有一个list属性,这是一个数组。
如果请求出错了,这里只是打印出错误信息,当然还可以进一步处理的。这里就省略了。
在这样的请求中,只关心业务逻辑,而不需要关心底层的实现。
如果再加个参数呢?
            
            
              javascript
              
              
            
          
          const reload = () => {
		MyAPI.getDevice(MyAPI.getDeviceId())
		.then(res => {
			device.value = res
		}).catch(err => {
			console.warning('err', err)
		})
	}
        你发现,虽然函数不同,但是使用的形式都是一样的。
通过这样的封装,可以将所有用得到的http请求都封装成这样,在编码中统一形式和风格。