Bagaimana menggunakan storan tempatan HTML5 untuk data?
Menggunakan storan tempatan HTML5: storan tempatan HTML5 menyediakan cara mudah untuk menyimpan pasangan nilai kunci secara langsung dalam pelayar web pengguna. Data ini berterusan walaupun selepas penyemak imbas ditutup dan dibuka semula, tidak seperti penyimpanan sesi yang dibersihkan apabila tab atau tetingkap pelayar ditutup. Data ini khusus untuk asal (domain, protokol, dan port) laman web. Ia mengambil dua hujah: kunci (rentetan) dan nilai (rentetan). Nombor, boolean, dan objek boleh disimpan, tetapi ia mesti ditukar kepada rentetan menggunakan
sebelum penyimpanan dan dihuraikan kembali menggunakan
apabila mendapatkan semula. Ia mengembalikan nilai sebagai rentetan, atau
jika kunci tidak wujud. Ingatlah untuk menghuraikan objek JSON kembali ke objek.
-
localStorage.setItem()
JSON.stringify()
Mengeluarkan data: JSON.parse()
Menghapus item tertentu menggunakan kunci.
membuang semua item yang disimpan untuk asal itu. Sebagai alternatif, anda boleh menggunakan
<code class="javascript">// Store a name
localStorage.setItem('userName', 'John Doe');
// Store an object (must stringify)
let user = { name: 'Jane Doe', age: 30 };
localStorage.setItem('userData', JSON.stringify(user));</code>
.
- Penyimpanan sisi klien: Data disimpan pada mesin klien, menjadikannya terdedah kepada serangan sisi klien. Skrip jahat yang dijalankan pada penyemak imbas pengguna berpotensi mengakses dan memanipulasi data yang disimpan. Ini terutamanya mengenai maklumat sensitif seperti kata laluan atau maklumat yang boleh dikenal pasti secara peribadi (PII) disimpan. Jangan sekali-kali menyimpan data sensitif secara langsung dalam penyimpanan tempatan. Pengesahan input dan pengekodan output yang teguh adalah penting untuk mengurangkan kelemahan XSS. Walaupun penyemak imbas mungkin menawarkan perlindungan terhadap akses kasual, penyerang yang ditentukan dengan akses fizikal ke mesin berpotensi mengambil data. Penyemak imbas mungkin mempunyai mekanisme mereka sendiri untuk menguruskan kuota penyimpanan dan membersihkan data, yang berpotensi mempengaruhi ketersediaan maklumat yang disimpan. Sekiranya:
-
> Pangkalan data atau mekanisme penyimpanan yang disulitkan. Kesesuaiannya bergantung kepada keperluan khusus aplikasi. Berikut adalah perbandingan:
Feature |
HTML5 Local Storage |
Session Storage |
Cookies |
Server-Side Databases |
IndexedDB |
Storage Location |
Client-side |
Client-side |
Client-side |
Server-side |
Client-side |
Persistence |
Persistent |
Session-based |
Persistent (configurable) |
Persistent |
Persistent |
Size Limit |
~5MB-10MB (browser dependent) |
~5MB-10MB (browser dependent) |
~4KB (per cookie) |
Virtually unlimited |
Much larger than local storage |
Access |
Same origin |
Same origin |
Same origin |
Network request required |
Same origin |
Security |
Vulnerable to XSS |
Vulnerable to XSS |
Vulnerable to XSS, susceptible to manipulation |
More secure |
Relatively secure |
Data Type |
Key-value pairs |
Key-value pairs |
Key-value pairs |
Structured data |
Structured data |
Singkat Sesi. Memerlukan pertanyaan dan pengindeksan yang cekap. Keterbatasan penyemak imbas biasanya menyekat kapasiti penyimpanan kepada beberapa megabait (5MB-10MB, berbeza dengan penyemak imbas dan peranti). Percubaan untuk menyimpan lebih banyak data yang mungkin akan menghasilkan masalah prestasi dan pengecualian kuota penyimpanan yang berpotensi. untuk menguruskan dataset besar. Mereka menawarkan keupayaan skalabilitas, pengindeksan, dan pertanyaan yang kuat. Ia sesuai untuk aplikasi luar talian yang perlu menyimpan dan menguruskan sejumlah besar data tempatan. Walau bagaimanapun, ingat bahawa mampatan menambah overhead pemprosesan. Pilih penyelesaian yang lebih sesuai berdasarkan saiz, jenis, dan keperluan keselamatan data anda.
Atas ialah kandungan terperinci Bagaimana cara menggunakan storan tempatan HTML5 untuk data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan: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