小程序本地异步存储wx.setStorage

wx.setStorage(Object object)

将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。

以 Promise 风格 调用:支持
小程序插件:支持,需要小程序基础库版本不低于 1.9.6
微信 Windows 版:支持
微信 Mac 版:支持

参数

Object object

属性 类型 默认值 必填 说明 最低版本
key string 本地缓存中指定的 key
data any 需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象。
encrypt Boolean false 是否开启加密存储。只有异步的 setStorage 接口支持开启加密存储。开启后,将会对 data 使用 AES128 加密,接口回调耗时将会增加。若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true。此外,由于加密后的数据会比原始数据膨胀1.4倍,因此开启 encrypt 的情况下,单个 key 允许存储的最大数据长度为 0.7MB,所有数据存储上限为 7.1MB 2.21.3
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

wx.setStorage({
  key:"key",
  data:"value"
})
// 开启加密存储
wx.setStorage({
  key: "key",
  data: "value",
  encrypt: true, // 若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
  success() {
    wx.getStorage({
      key: "key",
      encrypt: true, // 若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
      success(res) {
        console.log(res.data)
      }
    })
  }
})

分类小程序数据缓存相关推荐:

小程序本地同步存储wx.setStorageSync 小程序本地异步存储wx.setStorage 小程序同步获取本地存储内容wx.getStorageSync 小程序同步获取所有本地存储 小程序异步获取当前storage的相关信息wx.getStorageInfo 小程序从本地缓存中异步获取指定 key 的内容wx.getStorage 小程序从异步本地缓存中移除指定 key wx.removeStorage 小程序同步移除本地存储wx.removeStorageSync 小程序异步清理本地数据缓存wx.clearStorage 小程序同步清楚本地存储 小程序根据 URL 销毁存在内存中的数据wx.revokeBufferURL 小程序根据传入的 buffer 创建一个唯一的 URL 存在内存中wx.createBufferURL 小程序设置自定义登录态wx.setBackgroundFetchToken 小程序监听收到 backgroundFetch 数据事件wx.onBackgroundFetchData 小程序获取设置过的自定义登录态wx.getBackgroundFetchToken 小程序拉取 backgroundFetch 客户端缓存数据wx.getBackgroundFetchData