Aperçu : Après vous être connecté à un système, il y a une page pour configurer certaines informations. Après avoir configuré les informations, vous pouvez continuer à utiliser d'autres pages. Cependant, mon habitude générale de fonctionnement est d'ouvrir deux onglets, et un onglet est. la page de configuration qui est toujours ouverte. L'autre page à onglet est la page de fonctionnement ;
Exigence 1 : Actuellement, je mets une partie des informations de configuration dans sessionStorage
中,但是两个标签页的sessionstorage
是不共享的,只有当前页面配置当前页面操作其他页面才有效,至于不用localStorage
car les informations de configuration seront toujours enregistrées et ne seront pas mises à jour après la prochaine connexion.
Exigence 2 : Si l'acquisition frontale actuelle sessionStorage
中的信息的逻辑是这样的,如果存在该item
并且不为空,便直接用了,不会去后台取,这样的问题是多用户端场景时,其他用户更改了配置,当前客户端不能及时获取最新配置信息,我有一个思路是参照http 3xx
的做法,每次前台get配置信息时,都往后台放松一个请求,如果lastmodifiedtime
reste inchangée, continuez à utiliser les données locales. Une fois qu'elles auront changé, les dernières informations de configuration seront renvoyées. Si vous avez de bonnes suggestions, partagez-les !
Je me demande si quelqu'un a de meilleures idées et suggestions
Si je fais face à un tel besoin, ce que je fais :
Exigence 1 : Utilisez LocalStorage, mais le nom de la clé portera le délai d'expiration, tel que l'article&1494485763;
Exigence 2 : Chaque fois qu'un élément de configuration est demandé, la requête porte la valeur du cookie de l'heure de la dernière modification ; si l'heure de la dernière modification est la même, renvoie vide et utilise les données locales, sinon, renvoie le dernier élément de configuration ; ;
localStorage, puis réinitialisez-le sur la page d'accueil de la page de connexion, n'est-ce pas suffisant ?
Ensuite, l'exigence 2 est de définir le délai d'expiration. Si dix minutes se sont écoulées depuis le dernier stockage local. Extrayez à nouveau les données.
localStorage ou indexedDB peuvent être utilisés ;
Pour le traitement des données mises en cache, vous pouvez concevoir un mécanisme d'expiration, ou vous pouvez générer un UUID pour chaque transaction et vider le cache une fois toutes les transactions terminées.
localStorage peut résoudre complètement le problème. Si les informations que vous stockez changent, mettez simplement à jour les informations de stockage correspondantes dans localStorage. Bien entendu, s’il existe des informations sensibles, elles ne peuvent pas être stockées dans le navigateur.