2017-10-17 4 views
0

J'ai un moteur de recherche gratuit sur mon site. Je souhaite conserver tous les termes de recherche et leurs données côté client (pour améliorer la vitesse de recherche). Je reçois les données par un appel ajax en tant qu'objet json.Gardez Json plus grand que 12MB côté client

La taille de json est supérieure à 12 Mo, donc je ne peux pas la conserver en mémoire locale car elle ne peut pas contenir de telles données volumineuses.

Comment puis-je conserver les données côté client?

Merci.

+0

Si l'espace est disponible, vous pouvez utiliser 'requestFileSystem' sur Chromium, Chrome – guest271314

+0

Cela fait pas mal de données à conserver côté client. Combien de temps prennent vos appels à distance, ce qui rend le maintien de 12 Mo localement plus faisable? – Tor

+0

Je pense que vous vous approchez de ce problème - si vous êtes préoccupé par la vitesse, le chargement d'un json> 12 Mo n'est pas un bon début. Essayez de décharger la recherche sur le serveur –

Répondre

1

Ce n'est pas une bonne idée de conserver ces grandes données sur le stockage local du client. La taille du stockage local change d'un navigateur à l'autre. Même certains navigateurs donnent plus de 5 Mo, par exemple, Opera donne 3 Mo au maximum.

Le meilleur choix serait de mettre en cache les données de recherche au niveau du backend mais de mettre en cache une petite quantité de données sur le client. Lorsque l'utilisateur entre les clés dans la boîte de recherche, vous pouvez apporter des données commence par disons avec 3 caractères et cache sur le client uniquement ces données. Mais encore une fois, il devrait être supprimé après avoir été utilisé.

+0

Merci. l'explication pourquoi ne pas utiliser dans le stockage local est grande. pour la deuxième question - pourquoi ai-je besoin de supprimer les données après avoir été utilisé? et toute autre idée comment garder cette date dans le client, mais pas dans le stockage local? comme dans le fichier js/fichier json quelque chose? – BIBI