uni-app学习笔记

Uni-app网络请求

在uni中可以调用uni.request方法进行请求网络请求


在各个小程序平台运行时,网络相关的 API 在使用前需要配置域名白名单。


uni.request(OBJECT)

参数说明

参数名默认值说明
url开发者服务器接口地址
data请求的参数
header设置请求的 header,header 中不能设置 Referer
methodGET有效值见下方说明
timeout30000超时时间,单位 ms
dataTypejson如果设为 json,会尝试对返回的数据做一次 JSON.parse
success收到开发者服务成功返回的回调函数
fail接口调用失败的回调函数
complete接口调用结束的回调函数(调用成功、失败都会执行)
method有效值

必须大写

1.GET
2.POST
3.PUT
4.DELETE
5.CONNECT
6.HEAD
7.OPTIONS
8.TRACE

success 返回参数
参数说明
data开发者服务器返回
statusCode开发者服务器返回的 HTTP 状态码
header开发者服务器返回的 HTTP Response Header

发送get请求

<button @click="faGet">发送</button>
<scripe>
	export default{
		methods:{
			faGet(){
			uni.request({
				url:'http://........',
				method:'GET',
				success(res){
					console.log(res)
				}
			})
		}
	}
}
</script>

也可以在onLoad中发起请求。

post请求

onLoad:function(){
	var requesTask = uni.request(
		{
			url:'http://...',
			method:'POST',
			data:{name:'name',age:20},
			success:function(res){
				console.log(res);
			}
		}
	)
}
data数据说明

最终发送给服务器的数据是 String 类型,如果传入的 data 不是 String 类型,会被转换成 String。转换规则如下:

  • 对于 GET 方法,会将数据转换为 query string。例如 { name: ‘name’, age: 18 } 转换后的结果是 name=name&age=18。
  • 对于 POST 方法且 header[‘content-type’] 为 application/json 的数据,会进行 JSON 序列化。
  • 对于 POST 方法且 header[‘content-type’] 为 application/x-www-form-urlencoded 的数据,会将数据转换为 query string。

数据缓存

本地数据存储,把数据临时存到本地而不是存到数据库。可以理解为将一个数据保存在手机上。

uni.setStorage(object)

将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。

object参数

参数名说明
key本地缓存中的指定的 key
data需要存储的内容,只支持原生类型、及能够通过 JSON.stringify 序列化的对象
success接口调用成功的回调函数
fail接口调用失败的回调函数
complete接口调用结束的回调函数(调用成功、失败都会执行)

存储数据:

<button type="primary" @click="setStor">存储数据</button>
<script>
	export default{
		methods:{
			setStor(){
				uni.setStorage({
					key:'id',
					data:100,
					success(){	
						console.log('存储成功')
					}
				})
			}
		}
	}
</script>
uni.getStorage(object)

从本地缓存中异步获取指定 key 对应的内容。
object参数

参数名说明
key本地缓存中的指定的 key
success接口调用成功的回调函数
fail接口调用失败的回调函数
complete接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数

参数说明
datakey对应的内容

获取数据:

<button type="primary" @click="getStorage">获取数据</button>
<script>
	export default{
		methods:{
			getStorage(){
				uni.getStorage({
					key:'id',
					success(res){	
						console.log('获取成功',res)
					}
				})
			}
		}
	}
</script>
uni.setStorageSync(key,data)

将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。

参数说明
key本地缓存中的指定的key
data需要存储的内容,只支持原生类型、及能够通过 JSON.stringify 序列化的对象
<button trpe="primary" @click="setSto">存储数据</button>
<script>
	export default{
		methods:{
			setSto (){
				uni.setStorageSync('id',1000)
			}
		}
	}
</script>
uni.getStorageSync(key)

从本地缓存中同步获取指定 key 对应的内容。
参数说明

参数说明
key本地缓存中的指定的key
<button trpe="primary" @click="getSto">存储数据</button>
<script>
	export default{
		methods:{
			setSto (){
				const res = uni.getStorageSync('id')
				console.log(res)
			}
		}
	}
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值