Introduction to WeChat Development (9) Local Cache
Currently, WeChat provides 10M of local cache space for each mini program (oh my god, it’s so big)
With local cache, your mini program can do:
Offline application (tested to operate cached data without network)
Smooth user experience
Reduce network requests and save server resources
Which data is suitable for side cache:
-
Hot data
Static data (user data, server authorization ID, etc.)
Network address (network address of pictures, files, etc.)
Paging list data and detailed content
General cache systems use key-value pairs to complete data insertion and reading. By performing a Hash algorithm on key, a unique value is obtained and bound to the value; when queries, the algorithm space is queried based on the hashed key Complexity O(1);
The implementation of the local cache of the mini program is based on the above method. However, whether the data is stored in ROM or stored in RAM for persistence remains to be studied.
There are two types of local cache data operations: synchronous and asynchronous. The synchronization method has a success callback function , which indicates the operation after successful data processing. The following is the local cache operation interface provided by the mini program:
Asynchronous method | Synchronous method | |
---|---|---|
wx.setStorage | wx.setStorageSync | |
wx.getStorage | wx.getStorageSync | |
wx.removeStorage | wx.removeStorageSync | |
wx.clearStorage | wx.clearStorageSync | |
wx.getStorageInfo | wx.getStorageInfoSync |
- The synchronous method will block the current task until the synchronous method returns.
- Asynchronous methods will not block the current task.
- 6. The following are two methods of inserting cache to illustrate the difference between synchronization and asynchronousness:
1. Call the asynchronous method first, and then call the synchronous method
Page({save: function(e){console.log('开始保存')wx.setStorage({ key: 'key1', data: 'data1', success: function(res){ console.log('异步保存成功') }})wx.setStorageSync('key2', 'data2')console.log('同步保存成功') }})
Execution results:
It can be seen that the synchronous method is successfully saved before the asynchronous method, indicating that the asynchronous method does not block the current task.
1. First call the synchronous method, then call the asynchronous method
Page({save: function(e){console.log('开始保存')wx.setStorageSync('key2', 'data2')console.log('同步保存成功')wx.setStorage({ key: 'key1', data: 'data1', success: function(res){ console.log('异步保存成功') }}) }})
Execution result:
It can be seen that the asynchronous method can only wait until the synchronous method is executed It will be executed only if it succeeds.
Cache
APIProvides an interface wx.getStorageInfo for obtaining local cache information. With it, developers can re-encapsulate existing APIs, such as adding cache time and inserting without overwriting. , batch deletion, determining the current cache size, etc. The last one is the issue of cache isolation level:
- The same mobile phone, different mini-program applications, at least in terms of logical storage, are definitely not shared caches, which meet application-level isolation.
- The same mobile phone, the same applet, can be used by different WeChat users by scanning the code. After testing, the cache is not shared. Under current test conditions, it is user-level isolation.
- The same mobile phone, the same mini program, the same WeChat user scanned the code twice and used it. After testing, it is a shared cache.
- The same mobile phone, the same applet, can be switched by different WeChat users (scan the code twice respectively). After testing, the same user shares the cache, but different users do not share the cache.
- Currently it can be inferred that under real machine
conditions, each mini program QR code scanning user will be allocated a 10M local cache. The above are the results obtained by personal testing on real machines. The results may not be completely accurate and are for reference only.
【Related recommendations】
1.
WeChat public account platform source code download小 Pigcms (PigCms) micro-e-commerce System operation version (independent Weidian mall + three-level distribution system) WeChat People Network v3.4.5 Advanced Commercial Edition WeChat Rubik’s Cube Source CodeThe above is the detailed content of Introduction to WeChat Development (9) Local Cache. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

PHP is an open source scripting language that is widely used in web development and server-side programming, especially in WeChat development. Today, more and more companies and developers are starting to use PHP for WeChat development because it has become a truly easy-to-learn and easy-to-use development language. In WeChat development, message encryption and decryption are a very important issue because they involve data security. For messages without encryption and decryption methods, hackers can easily obtain the data, posing a threat to users.

How to avoid Localstorage data loss? With the development of web applications, data persistence has become an important issue. Localstorage is a very commonly used data persistence solution provided by browsers. However, data stored in LocalStorage may be lost due to various reasons. This article will introduce several methods to avoid LocalStorage data loss and provide specific code examples. 1. Back up data regularly. Backing up data regularly is the key to avoid Lo

With the popularity of WeChat, more and more companies are beginning to use it as a marketing tool. The WeChat group messaging function is one of the important means for enterprises to conduct WeChat marketing. However, if you only rely on manual sending, it is an extremely time-consuming and laborious task for marketers. Therefore, it is particularly important to develop a WeChat mass messaging tool. This article will introduce how to use PHP to develop WeChat mass messaging tools. 1. Preparation work To develop WeChat mass messaging tools, we need to master the following technical points: Basic knowledge of PHP WeChat public platform development Development tools: Sub

In the development of WeChat public accounts, user tag management is a very important function, which allows developers to better understand and manage their users. This article will introduce how to use PHP to implement the WeChat user tag management function. 1. Obtain the openid of the WeChat user. Before using the WeChat user tag management function, we first need to obtain the user's openid. In the development of WeChat public accounts, it is a common practice to obtain openid through user authorization. After the user authorization is completed, we can obtain the user through the following code

How to use PHP to develop WeChat public accounts WeChat public accounts have become an important channel for promotion and interaction for many companies, and PHP, as a commonly used Web language, can also be used to develop WeChat public accounts. This article will introduce the specific steps to use PHP to develop WeChat public accounts. Step 1: Obtain the developer account of the WeChat official account. Before starting the development of the WeChat official account, you need to apply for a developer account of the WeChat official account. For the specific registration process, please refer to the official website of WeChat public platform

As WeChat becomes an increasingly important communication tool in people's lives, its agile messaging function is quickly favored by a large number of enterprises and individuals. For enterprises, developing WeChat into a marketing platform has become a trend, and the importance of WeChat development has gradually become more prominent. Among them, the group sending function is even more widely used. So, as a PHP programmer, how to implement group message sending records? The following will give you a brief introduction. 1. Understand the development knowledge related to WeChat public accounts. Before understanding how to implement group message sending records, I

In the development of WeChat public accounts, the voting function is often used. The voting function is a great way for users to quickly participate in interactions, and it is also an important tool for holding events and surveying opinions. This article will introduce you how to use PHP to implement WeChat voting function. Obtain the authorization of the WeChat official account. First, you need to obtain the authorization of the WeChat official account. On the WeChat public platform, you need to configure the API address of the WeChat public account, the official account, and the token corresponding to the public account. In the process of our development using PHP language, we need to use the PH officially provided by WeChat

WeChat is currently one of the social platforms with the largest user base in the world. With the popularity of mobile Internet, more and more companies are beginning to realize the importance of WeChat marketing. When conducting WeChat marketing, customer service is a crucial part. In order to better manage the customer service chat window, we can use PHP language for WeChat development. 1. Introduction to PHP WeChat development PHP is an open source server-side scripting language that is widely used in the field of Web development. Combined with the development interface provided by WeChat public platform, we can use PHP language to conduct WeChat
