Rumah > hujung hadapan web > Tutorial H5 > Bagaimanakah saya menggunakan API Penyimpanan Web HTML5 (LocalStorage, SessionStorage) untuk data yang berterusan?

Bagaimanakah saya menggunakan API Penyimpanan Web HTML5 (LocalStorage, SessionStorage) untuk data yang berterusan?

Johnathan Smith
Lepaskan: 2025-03-18 14:05:31
asal
514 orang telah melayarinya

Bagaimanakah saya menggunakan API Penyimpanan Web HTML5 (LocalStorage, SessionStorage) untuk data yang berterusan?

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>
Salin selepas log masuk

Mendapatkan data:

 <code class="javascript">let username = localStorage.getItem('username'); let sessionId = sessionStorage.getItem('sessionId');</code>
Salin selepas log masuk

Mengeluarkan data:

 <code class="javascript">localStorage.removeItem('username'); sessionStorage.removeItem('sessionId');</code>
Salin selepas log masuk

Membersihkan semua data:

 <code class="javascript">localStorage.clear(); sessionStorage.clear();</code>
Salin selepas log masuk

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).

Apakah perbezaan antara LocalStorage dan sessionStorage dari segi kegigihan data?

Perbezaan utama antara localStorage dan sessionStorage terletak pada tempoh dan skop kegigihan data:

  • LocalStorage:

    • Data berterusan di sesi penyemak imbas dan tab.
    • Data tersedia untuk semua tingkap dan tab asal yang sama.
    • Data tetap disimpan sehingga ia secara eksplisit dikeluarkan menggunakan removeItem() atau clear() , atau sehingga pengguna membersihkan data penyemak imbas mereka.
  • SesiStorage:

    • Data disimpan hanya untuk tempoh sesi halaman.
    • Data boleh diakses hanya dalam tab atau tetingkap yang sama yang menciptanya.
    • Apabila tab atau tetingkap ditutup, semua data yang disimpan dalam 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.

Bagaimanakah saya dapat memastikan keselamatan data apabila menggunakan LocalStorage dan sessionStorage?

Walaupun localStorage dan sessionStorage mudah untuk penyimpanan pelanggan, mereka datang dengan pertimbangan keselamatan:

  1. Jangan menyimpan data sensitif : Jangan menyimpan maklumat sensitif seperti kata laluan, butiran kad kredit, atau nombor pengenalan peribadi di localStorage atau sessionStorage . Mekanisme penyimpanan ini tidak selamat dan boleh diakses oleh skrip berniat jahat.
  2. Gunakan HTTPS : Pastikan laman web anda menggunakan HTTPS untuk mengelakkan data daripada dipintas ke atas rangkaian tidak bercagar.
  3. 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>
    Salin selepas log masuk
  4. Gunakan Dasar Keselamatan Kandungan (CSP) : Melaksanakan dasar keselamatan kandungan untuk mengurangkan serangan skrip lintas tapak (XSS), yang boleh mengakses data storan anda.
  5. Data yang tidak digunakan secara kerap : Semak semula secara berkala dan jelaskan sebarang data yang tidak perlu dari localStorage dan sessionStorage untuk meminimumkan risiko pendedahan.

Apakah amalan terbaik untuk menguruskan dan menganjurkan data yang disimpan di LocalStorage dan sessionStorage?

Untuk mengurus dan menganjurkan data dengan berkesan di localStorage dan sessionStorage , ikuti amalan terbaik ini:

  1. 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>
    Salin selepas log masuk
  2. 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>
    Salin selepas log masuk
  3. Tetapkan Had Penyimpanan : Berhati-hati dengan had penyimpanan (biasanya sekitar 5-10 MB setiap domain) dan menguruskan data anda dengan sewajarnya. Pertimbangkan untuk mengeluarkan data yang lebih lama apabila had dicapai.
  4. 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>
    Salin selepas log masuk
  5. 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>
    Salin selepas log masuk
  6. Secara kerap mengaudit dan bersihkan : Semak semula data yang disimpan secara berkala dan keluarkan apa -apa yang tidak lagi diperlukan atau ketinggalan zaman.
  7. Ujian dengan teliti : Pastikan aplikasi anda mengendalikan kedua -dua kehadiran dan ketiadaan data dengan anggun, dan uji bagaimana aplikasi anda berkelakuan merentasi pelayar dan peranti yang berbeza.

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!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan