web-dev-qa-db-fra.com

Stockage local en chrome

J'ai un code JavaScript qui sauvegarde la chaîne dans le stockage local, la taille de la chaîne est 400000,

var dataURL = canvas.toDataURL("image/jpg").toString();
localStorage.setItem("dataURL", dataURL);

J'ouvre le fichier html de chrome, sur un ordinateur, ça va dans l'autre ordinateur, je reçois 

Uncaught QuotaExceededError: Impossible d'exécuter 'setItem' sur 'Stockage': Le paramétrage de 'dataURL' a dépassé le quota.

Sur cet ordinateur, je permettais de sauvegarder une longueur de chaîne ne dépassant pas 100 000 caractères . Les deux ordinateurs ont la même version de chrome que la version 35.0.1916.114 de Chrome. Pourquoi?

Lorsque votre navigateur atteint la limite maximale, cette erreur générée apparaît.

  • Vous pouvez le gérer comme ça

 try {
     var count = 100;
     var message = "LocalStorageIsNOTFull";
     for (var i = 0; i <= count; count + 250) {
         message += message;
         localStorage.setItem("stringData", message);
         console.log(localStorage);
         console.log(count);
     }

 }
 catch (e) {
     console.log("Local Storage is full, Please empty data");
     // fires When localstorage gets full
     // you can handle error here or empty the local storage
 }

5
jinal

la mémoire par défaut du stockage local de chrome est de 25 Mo. Désactivez donc le stockage local de votre chrome. bonne chance!

1
Willie Zou

Cela dépend de la préférence du navigateur et de l'espace disque. Comparez les navigateurs de vos deux ordinateurs ici/ https://arty.name/localstorage.html et vérifiez s'ils stockent le même n °. de caractères. Vous verriez la différence.

1
Nikhil Motiani