local Storage:Всичко, което трябва да знаете
localStorage
е уеб технология, която позволява съхранение на данни в браузъра. Тази функция е част от HTML5 спецификацията. Данните в localStorage
са постоянни и не се изчистват при затваряне на браузъра. Това го прави полезен за различни уеб приложения.
Основни характеристики на localStorage
Постоянно съхранение
Данните, съхранени в localStorage
, остават там докато не бъдат ръчно изтрити. Те не се изтриват автоматично при затваряне на браузъра или рестартиране на устройството.
Капацитет
localStorage
предлага капацитет от около 5MB на домейн. Това е значително повече в сравнение с cookies, които обикновено имат лимит от 4KB.
Лесен за използване
Интерфейсът на localStorage
е прост и лесен за използване. Той предоставя методи за съхранение, извличане и изтриване на данни.
Как да достъпите localStorage
- Отворете инструментите за разработчици:
- В Google Chrome: Натиснете
F12
илиCtrl+Shift+I
(илиCmd+Option+I
на Mac). - В Mozilla Firefox: Натиснете
F12
илиCtrl+Shift+I
(илиCmd+Option+I
на Mac). - В Microsoft Edge: Натиснете
F12
илиCtrl+Shift+I
(илиCmd+Option+I
на Mac).
- В Google Chrome: Натиснете
- Отидете на таба “Application” (или “Storage” във Firefox):
- В Chrome: Кликнете на таба “Application”.
- В Firefox: Кликнете на таба “Storage”.
- В Edge: Кликнете на таба “Application”.
- Намерете localStorage:
- В Chrome и Edge: В лявата странична лента, разгънете “Local Storage” и изберете вашия сайт.
- В Firefox: В лявата странична лента, разгънете “Local Storage” и изберете вашия сайт.
Ограничения на localStorage
Размер на данните
Максималният размер на данните в localStorage
е около 5MB. Това може да бъде недостатъчно за някои приложения.
Сигурност
Данните в localStorage
не са криптирани. Това означава, че те могат да бъдат достъпни от JavaScript на същия домейн. Избягвайте съхранение на чувствителна информация в localStorage
.
Съвместимост
localStorage
е част от HTML5 и се поддържа от всички съвременни браузъри. Въпреки това, някои стари версии на браузъри може да не го поддържат.
Приложения на localStorage
Съхранение на потребителски предпочитания
localStorage
е идеален за съхранение на потребителски предпочитания като теми, езикови настройки и други. Това позволява персонализиране на потребителския опит.
Кеширане на данни
localStorage
може да се използва за кеширане на данни от API повиквания. Това може да подобри производителността на уеб приложението, като намали нуждата от повторни заявки към сървъра.
Управление на сесии
Въпреки че sessionStorage
е по-подходящ за управление на сесии, localStorage
също може да се използва за съхранение на данни, които трябва да останат достъпни между сесиите.
Синхронизиране на данни
localStorage
не се синхронизира между различни устройства. За да постигнете синхронизация, можете да използвате бекенд сървър или облачна услуга.
Примерен бекенд сървър с Node.js и Express
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const port = 3000;
app.use(bodyParser.json());
let passwords = [];
app.post('/savePassword', (req, res) => {
const { site, password } = req.body;
passwords.push({ site, password });
res.send('Паролата е запазена успешно.');
});
app.get('/getPasswords', (req, res) => {
res.json(passwords);
});
app.listen(port, () => {
console.log(`Server running at http://localhost:${port}/`);
});
Клиентска част за взаимодействие с бекенд сървъра
async function savePasswordToServer(site, password) {
const response = await fetch('http://localhost:3000/savePassword', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ site, password })
});
const result = await response.text();
alert(result);
}
async function getPasswordsFromServer() {
const response = await fetch('http://localhost:3000/getPasswords');
const passwords = await response.json();
console.log(passwords);
}
Използване на Firebase за съхранение на данни
Firebase е облачна платформа, която предоставя синхронизиран бекенд за уеб приложения.
Инициализация на Firebase
<script src="https://www.gstatic.com/firebasejs/9.6.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/9.6.1/firebase-firestore.js"></script>
<script>
const firebaseConfig = {
apiKey: "YOUR_API_KEY",
authDomain: "YOUR_AUTH_DOMAIN",
projectId: "YOUR_PROJECT_ID",
storageBucket: "YOUR_STORAGE_BUCKET",
messagingSenderId: "YOUR_MESSAGING_SENDER_ID",
appId: "YOUR_APP_ID"
};
firebase.initializeApp(firebaseConfig);
const db = firebase.firestore();
</script>
Запазване на данни във Firebase
async function savePasswordToFirebase(site, password) {
await db.collection('passwords').add({
site: site,
password: password,
timestamp: firebase.firestore.FieldValue.serverTimestamp()
});
alert('Паролата е запазена успешно в Firebase.');
}
Извличане на данни от Firebase
async function getPasswordsFromFirebase() {
const querySnapshot = await db.collection('passwords').orderBy('timestamp').get();
querySnapshot.forEach((doc) => {
console.log(`${doc.id} => ${doc.data().site}: ${doc.data().password}`);
});
}
Заключение
localStorage
е мощен инструмент за съхранение на данни в уеб браузъра. Той е лесен за използване и предлага достатъчно място за множество приложения. Въпреки това, localStorage
има своите ограничения, включително сигурността и липсата на синхронизация между устройства. За по-сложни случаи, можете да използвате бекенд сървър или облачни услуги като Firebase. С правилното използване на localStorage
и допълнителни технологии, можете да създадете мощни и удобни за потребителите уеб приложения.
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut