API Penyimpanan Web HTML5 menyediakan dua mekanisme untuk menyimpan data di sebelah pelanggan: localStorage
dan sessionStorage
. Kedua -duanya membenarkan aplikasi web untuk menyimpan data secara berterusan dalam penyemak imbas pengguna, tetapi mereka berbeza dari segi jangka hayat dan skop.
Untuk menggunakan localStorage
dan sessionStorage
, anda perlu memahami kaedah asas mereka terlebih dahulu. Kedua -duanya mempunyai API yang sama:
setItem(key, value)
: Menyimpan pasangan nilai utama dalam storan.getItem(key)
: Mendapatkan nilai yang berkaitan dengan kekunci yang diberikan.removeItem(key)
: Mengeluarkan pasangan nilai kunci dengan kekunci yang diberikan.clear()
: Menghapuskan semua pasangan nilai utama dari storan.Inilah cara menggunakan kaedah ini:
Menetapkan data:
<code class="javascript">localStorage.setItem('username', 'JohnDoe'); sessionStorage.setItem('sessionId', '12345');</code>
Mendapatkan data:
<code class="javascript">let username = localStorage.getItem('username'); let sessionId = sessionStorage.getItem('sessionId');</code>
Mengeluarkan data:
<code class="javascript">localStorage.removeItem('username'); sessionStorage.removeItem('sessionId');</code>
Membersihkan semua data:
<code class="javascript">localStorage.clear(); sessionStorage.clear();</code>
Perbezaan utama antara localStorage
dan sessionStorage
adalah bahawa localStorage
berterusan data merentasi sesi penyemak imbas (sehingga ia dibersihkan secara manual atau tamat tempoh disebabkan oleh had penyimpanan), sedangkan sessionStorage
mengekalkan data hanya untuk tempoh sesi halaman (data hilang apabila tab ditutup).
Perbezaan utama antara localStorage
dan sessionStorage
terletak pada tempoh dan skop kegigihan data:
LocalStorage:
removeItem()
atau clear()
, atau sehingga pengguna membersihkan data penyemak imbas mereka.SesiStorage:
sessionStorage
dibersihkan secara automatik. Perbezaan ini menjadikan localStorage
sesuai untuk kegigihan data jangka panjang, seperti keutamaan pengguna atau skor permainan, manakala sessionStorage
lebih sesuai untuk data sementara yang harus dibuang pada akhir sesi, seperti kereta belanja sebelum checkout.
Walaupun localStorage
dan sessionStorage
mudah untuk penyimpanan pelanggan, mereka datang dengan pertimbangan keselamatan:
localStorage
atau sessionStorage
. Mekanisme penyimpanan ini tidak selamat dan boleh diakses oleh skrip berniat jahat. Penyulitan Data : Jika anda mesti menyimpan data yang kurang sensitif tetapi masih penting, pertimbangkan untuk menyulitkannya sebelum menyimpannya di localStorage
atau sessionStorage
. Gunakan perpustakaan penyulitan sisi klien untuk menyulitkan data sebelum menetapkannya dan nyahpesarkannya selepas pengambilan semula.
<code class="javascript">// Example of encryption using a hypothetical library const encryptedData = encrypt('mySecretData', 'mySecretKey'); localStorage.setItem('encryptedData', encryptedData); // Later, to retrieve and decrypt const storedData = localStorage.getItem('encryptedData'); const decryptedData = decrypt(storedData, 'mySecretKey');</code>
localStorage
dan sessionStorage
untuk meminimumkan risiko pendedahan. Untuk mengurus dan menganjurkan data dengan berkesan di localStorage
dan sessionStorage
, ikuti amalan terbaik ini:
Gunakan kekunci yang bermakna : Gunakan kekunci yang jelas dan deskriptif untuk data anda untuk memudahkan difahami dan diselenggara. Sebagai contoh, gunakan userPreferences
dan bukannya data1
.
<code class="javascript">localStorage.setItem('userPreferences', JSON.stringify({theme: 'dark', notifications: true}));</code>
Simpan data berstruktur : Gunakan JSON untuk menyimpan struktur data yang kompleks. Ini menjadikannya lebih mudah untuk mengurus dan mengubah suai data.
<code class="javascript">const settings = {theme: 'dark', notifications: true}; localStorage.setItem('settings', JSON.stringify(settings)); // To retrieve const storedSettings = JSON.parse(localStorage.getItem('settings'));</code>
Susun data ke dalam ruang nama : Gunakan awalan atau ruang nama kepada data berkaitan kumpulan, yang membantu dalam menganjurkan dan mengelakkan perlanggaran utama.
<code class="javascript">localStorage.setItem('app_settings.theme', 'dark'); localStorage.setItem('app_settings.notifications', 'true');</code>
Data kawalan versi : Tambahkan nombor versi ke struktur data anda untuk mengendalikan kemas kini dengan anggun.
<code class="javascript">const settings = {version: '1.0', theme: 'dark', notifications: true}; localStorage.setItem('settings', JSON.stringify(settings));</code>
Dengan mengikuti garis panduan ini, anda boleh menggunakan localStorage
dan sessionStorage
dengan berkesan untuk meningkatkan aplikasi web anda sambil mengekalkan organisasi dan keselamatan data.
Atas ialah kandungan terperinci Bagaimanakah saya menggunakan API Penyimpanan Web HTML5 (LocalStorage, SessionStorage) untuk data yang berterusan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!