本节分为三个部分:
wx.request({
url: 'test.php', //仅为示例,并非真实的接口地址
data: {
x: '',
y: ''
},
header: {
'content-type': 'application/json' // 默认值
},
method: 'POST',
success: function(res) {
console.log(res.data)
},
fail: function(res){
}
})
wx.request包含一个请求对象,就完成了请求。
参数说明:
要注意的是,开发时应不勾选校验域名、https证书等。
例子(定义了一个testNetwork事件,触发时发送网络请求):
testNetwork: function(event){
wx.request({
url: 'http://www.baidu.com',
method: 'GET',
header: {},
success: function(res){
console.log(res.data)
},
fail: function(res){
console.log('request failed.')
}
})
}
网络请求一般是异步的,即,发送请求之后,success与fail的回调是异步的,立即执行wx.request后面的代码,当确认请求成功、失败后再执行回调。
wx.uploadFile({
url: 'https://example.weixin.qq.com/upload', //仅为示例,非真实的接口地址
filePath: tempFilePaths[0],
name: 'file',
formData: {
'user': 'test'
},
success (res){
const data = res.data
//do something
}
})
参数说明:
wx.downloadFile({
url: 'https://example.com/audio/123', //仅为示例,并非真实的资源
header: {},
filePath: 'example.jpg',
success (res) {
// 只要服务器有响应数据,就会把响应内容写入文件并进入 success 回调,业务需要自行判断是否下载到了想要的内容
if (res.statusCode === 200) {
wx.playVoice({
filePath: res.tempFilePath
})
}
}
})
参数说明:
异步任务提交以后,需要对任务进行操作时,使用Task对象。
对于一个Task对象,我们可以:
将数据存储在本地缓存中指定的key中,数据存储生命周期与小程序本身一致。
wx.setStorage({
key:"key",
data:"value"
})
接受一个对象,指定key和value。
wx.getStorage({
key: 'key',
success (res) {
console.log(res.data)
}
})
接受一个对象,指定key和获取成功时的回调。
这也是异步的,也有同步API:
try {
var value = wx.getStorageSync('key')
if (value) {
// Do something with return value
}
} catch (e) {
// Do something when catch error
}
try {
wx.setStorageSync('key', 'value')
} catch (e) { }
var fs = wx.getFileSystemManager()
上面的代码获取全局唯一的文件管理器,获得之后,就可以对文件进行增删改查了:
以及一些对文件夹的操作:
这是小程序对开发者最大的馈赠,让开发者有了触及广大用户的能力。
微信公众平台为了识别不同用户,对于每一个用户都将生成一个唯一的、安全的openid。在安全范围内,微信公众平台允许开发者获取openid,以便管理用户。
通过wx.login()获取的code可以认为是小程序与微信公众平台间的session。(code是有时限的)
通过wx.request()向开发者服务器发送code。
开发者服务器通过appid和appsecret和code向微信接口服务获取session_key和openid。
通过session_key和openid,就可以对用户进行管理了。
基于微信的通知渠道,小程序为开发者提供了可以高效触达用户的消息,以便形成小程序服务的闭环。
推送形式为服务通知号,点击查看详情可以跳转到小程序各个页面。
如何使用它呢?
@import 'thirdparty/weui.wxss'