緩衝的機制是根據 appId 和 userId 進行本機快取,因此在使用緩衝前需要使用 MPLogger.setUserId(String userId); 方法設定白名單 ID。
my.setStorage
將資料存放區在本機快取中指定的 key 中,會覆蓋原來該 key 對應的資料。
mPaaS 10.1.32 及以上版本支援該介面。
這是非同步介面。
支援內嵌 webview 的儲存與小程式儲存隔離,內嵌 webview 中指定 key 儲存資料不會覆蓋小程式自身相同 key 對應的資料。
入參
名稱 | 類型 | 必填 | 描述 |
|---|---|---|---|
key | String | 是 | 快取資料的 key |
data | Object/String | 是 | 要緩衝的資料 |
success | Function | 否 | 調用成功的回呼函數 |
fail | Function | 否 | 調用失敗的回呼函數 |
complete | Function | 否 | 調用結束的回呼函數(調用成功、失敗都會執行) |
程式碼範例
my.setStorage({
key: 'currentCity',
data: {
cityName: '杭州',
adCode: '330100',
spell: ' hangzhou',
},
success: function() {
my.alert({content: '寫入成功'});
}
});單條資料轉換成字串後,字串長度最大 200*1024。同一個用戶端使用者,同一個小程式緩衝總上限為 10 MB。
其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.setStorageSync
同步將資料存放區在本機快取中指定的 key 中。
mPaaS 10.1.32 及以上版本支援該介面。
這是同步介面。
入參
名稱 | 類型 | 必填 | 描述 |
|---|---|---|---|
key | String | 是 | 快取資料的 key |
data | Object/String | 是 | 要緩衝的資料 |
程式碼範例
my.setStorageSync({
key: 'currentCity',
data: {
cityName: '杭州',
adCode: '330100',
spell: ' hangzhou',
}
});其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.getStorage
擷取快取資料。
mPaaS 10.1.32 及以上版本支援該介面。
這是非同步介面。
支援內嵌 webview 內緩與小程式緩衝隔離,擷取內嵌 webview 指定 key 的緩衝不會同時返回小程式相同 key 下的快取資料。
入參
名稱 | 類型 | 必填 | 描述 |
|---|---|---|---|
key | String | 是 | 快取資料的 key |
success | Function | 否 | 調用成功的回呼函數 |
fail | Function | 否 | 調用失敗的回呼函數 |
complete | Function | 否 | 調用結束的回呼函數(調用成功、失敗都會執行) |
success 傳回值
名稱 | 類型 | 說明 |
|---|---|---|
data | Object/String | key 對應的內容 |
程式碼範例
my.getStorage({
key: 'currentCity',
success: function(res) {
my.alert({content: '擷取成功:' + res.data.cityName});
},
fail: function(res){
my.alert({content: res.errorMessage});
}
});其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.getStorageSync
同步擷取快取資料。
mPaaS 10.1.32 及以上版本支援該介面。
這是同步介面。
入參
名稱 | 類型 | 必填 | 描述 |
|---|---|---|---|
key | String | 是 | 快取資料的 key |
傳回值
名稱 | 類型 | 說明 |
|---|---|---|
data | Object/String | key 對應的內容 |
程式碼範例
let res = my.getStorageSync({ key: 'currentCity' });
my.alert({
content: JSON.stringify(res.data),
});其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.removeStorage
刪除快取資料。
mPaaS 10.1.32 及以上版本支援該介面。
這是非同步介面。
移除內嵌 webview 的儲存資料時不會移除當前小程式的儲存資料。
入參
名稱 | 類型 | 必填 | 描述 |
|---|---|---|---|
key | String | 是 | 快取資料的 key |
success | Function | 否 | 調用成功的回呼函數 |
fail | Function | 否 | 調用失敗的回呼函數 |
complete | Function | 否 | 調用結束的回呼函數(調用成功、失敗都會執行) |
程式碼範例
my.removeStorage({
key: 'currentCity',
success: function(){
my.alert({content: '刪除成功'});
}
});其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.removeStorageSync
刪除快取資料。
mPaaS 10.1.32 及以上版本支援該介面。
這是同步介面。
入參
名稱 | 類型 | 必填 | 描述 |
|---|---|---|---|
key | String | 是 | 快取資料的 key |
程式碼範例
my.removeStorageSync({
key: 'currentCity',
});其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.clearStorage
清除本機資料緩衝。
mPaaS 10.1.32 及以上版本支援該介面。
這是非同步介面。
清空內嵌 webview 的儲存時不會同時清空當前小程式本身的儲存資料。
程式碼範例
my.clearStorage()其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.clearStorageSync
清除本機資料緩衝。
mPaaS 10.1.32 及以上版本支援該介面。
這是同步介面。
程式碼範例
my.clearStorageSync()其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.getStorageInfo
非同步擷取當前 storage 的相關資訊。
mPaaS 10.1.32 及以上版本支援該介面。
這是非同步介面。
在內嵌 webview 內擷取當前 storage 的相關資訊不會擷取到當前小程式 storage 的相關資訊。
入參
名稱 | 類型 | 必填 | 描述 |
|---|---|---|---|
success | Function | 否 | 調用成功的回呼函數 |
fail | Function | 否 | 調用失敗的回呼函數 |
complete | Function | 否 | 調用結束的回呼函數(調用成功、失敗都會執行) |
success 傳回值
名稱 | 類型 | 說明 |
|---|---|---|
keys | StringArray | 當前 storage 中所有的 key |
currentSize | Number | 當前佔用的空間大小, 單位為 KB |
limitSize | Number | 限制的空間大小,單位為 KB |
程式碼範例
my.getStorageInfo({
success: function(res) {
console.log(res.keys)
console.log(res.currentSize)
console.log(res.limitSize)
}
})其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
iOS 用戶端支援 iTunes 備份。
my.getStorageInfoSync
同步擷取當前 storage 的相關資訊。
mPaaS 10.1.32 及以上版本支援該介面。
這是同步介面。
傳回值
名稱 | 類型 | 說明 |
|---|---|---|
keys | StringArray | 當前 storage 中所有的 key |
currentSize | Number | 當前佔用的空間大小, 單位為 KB |
limitSize | Number | 限制的空間大小,單位為 KB |
程式碼範例
var res = my.getStorageInfoSync()
console.log(res.keys)
console.log(res.currentSize)
console.log(res.limitSize)其他資訊
快取資料本地加密儲存,通過 API 讀取時會自動解密返回。
覆蓋安裝應用(不是先刪除再安裝),不會導致小程式緩衝失效。
應用設定中心清除緩衝不會導致小程式緩衝失效。
小程式緩衝預設具有應用帳號和小程式 ID 兩級隔離。
iOS 用戶端支援 iTunes 備份。