Dalam posting jQuery terakhir saya, saya melihat cara menyetel, mendapatkan, dan menghapus cookie dengan jQuery dan sekarang lihat cara mendapatkan daftar semua cookie yang telah disetel. Ini bukan khusus jQuery dan hanya akan berfungsi dengan Javascript biasa
Plugin jQuery Cookie (http. // plugin. jquery. com/project/Cookie) berguna untuk mendapatkan nilai cookie ketika Anda sudah mengetahui nama cookie yang ingin Anda kueri, tetapi tidak menyediakan cara untuk mendapatkan daftar semua cookie yang disetel
Fungsi berikut memuat semuanya ke dalam array asosiatif dengan nama cookie sebagai indeks dan nilai cookie sebagai nilainya
function get_cookies_array() { var cookies = { }; if (document.cookie && document.cookie != '') { var split = document.cookie.split(';'); for (var i = 0; i < split.length; i++) { var name_value = split[i].split("="); name_value[0] = name_value[0].replace(/^ /, ''); cookies[decodeURIComponent(name_value[0])] = decodeURIComponent(name_value[1]); } } return cookies; }
Anda kemudian bisa mendapatkan cookie dan menuliskannya ke dalam dokumen seperti itu
var cookies = get_cookies_array(); for(var name in cookies) { document.write( name + " : " + cookies[name] + "<br />" ); } _Perhatikan bahwa "nilai_nama[0] = nilai_nama[0]. replace(/^ /, ”);" baris menghapus spasi awal dari nama cookie yang akan ada untuk cookie kedua dan selanjutnya
Sangat umum bahwa kita semua masih menggunakan cookie HTTP atau HTTPS untuk menyimpan berbagai data di browser pengunjung. Namun dalam HTML5, Anda dapat menggunakan lokal untuk menyimpan berbagai data. Saya berbicara tentang cara lama untuk mendapatkan semua cookie menggunakan Javascript. Di sini karena kami masih memiliki browser lama untuk menangani cookie
Plugin jQuery Cookie (http. // plugin. jquery. com/project/Cookie) berguna untuk mendapatkan nilai cookie ketika Anda sudah mengetahui nama cookie yang ingin Anda kueri dari browser, tetapi tidak menyediakan cara untuk mendapatkan daftar semua cookie yang sudah disetel
Fungsi Javascript berikut memuat semuanya ke dalam array asosiatif dengan nama cookie sebagai indeks dan nilai cookie sebagai nilainya
fungsi get_cookies_array() {
var cookie = { };
jika (dokumen. cookie && dokumen. Kue kering. = ”) {
var split = dokumen. Kue kering. membelah(';');
untuk (var i = 0; i < bagi. panjang;
var nama_nilai = pisah[i]. belah(“=”);
nilai_nama[0] = nilai_nama[0]. ganti(/^ /, ”);
cookie[decodeURIComponent(nama_nilai[0])] = decodeURIComponent(nama_nilai[1]);
}
}
mengembalikan cookie;
}
var cookie = get_cookies_array();
untuk (nama var dalam cookie) {
menghibur. log( nama + ”. ” + cookie[nama] + “
” );
}
Anda kemudian bisa mendapatkan cookie dan menuliskannya ke dalam dokumen seperti itu
var cookie = get_cookies_array();
untuk (nama var dalam cookie) {
document.write( name + ” : ” + cookies[name] + “
” );
}
Anda dapat mengakses informasi cookie dalam javascript menggunakan dokumen. fungsi cookie, tetapi Anda hanya dapat membaca cookie yang berada di domain yang sama dengan skrip yang sedang dijalankan
Dengan JavaScript, Anda dapat dengan mudah mengakses/membaca cookie dengan “document. cookie”. Membaca cookie semudah menulisnya karena nilai dokumennya. objek cookie adalah cookie
Dokumen. string cookie akan menyimpan daftar pasangan nama=nilai yang dipisahkan oleh titik koma, di mana nama adalah nama cookie dan nilainya adalah nilai stringnya
Pada artikel ini, kita akan mempelajari cara mengakses cookie menggunakan objek dokumen di JavaScript
Sintaksis
document.cookieNilai pengembalian − Semua cookie disimpan di browser dalam satu string
Dokumen. string cookie akan menyimpan daftar pasangan nama=nilai yang dipisahkan oleh titik koma, di mana nama adalah nama cookie dan nilainya adalah nilai stringnya
Langkah
Untuk mengekstrak cookie tertentu menggunakan namanya, Anda dapat membagi string cookie di setiap titik koma, membuat objek Peta untuk menyimpan pasangan nilai kunci, dan mengulang array pasangan cookie, menyetel elemen pertama sebagai kunci dan yang kedua . Anda kemudian dapat mengambil cookie yang diinginkan dengan namanya dari Peta. Teknik ini berguna untuk menyimpan dan mengambil informasi di browser pengguna, seperti preferensi pengguna atau kredensial login
Peramban Web dan Server menggunakan protokol HTTP untuk berkomunikasi dan HTTP adalah protokol tanpa kewarganegaraan. Tetapi untuk situs web komersial, diperlukan untuk memelihara informasi sesi di antara halaman yang berbeda. Misalnya, satu pendaftaran pengguna berakhir setelah menyelesaikan banyak halaman. Tetapi bagaimana mempertahankan informasi sesi pengguna di semua halaman web
Dalam banyak situasi, menggunakan cookie adalah metode yang paling efisien untuk mengingat dan melacak preferensi, pembelian, komisi, dan informasi lain yang diperlukan untuk pengalaman pengunjung atau statistik situs yang lebih baik
Bagaimana itu bekerja ?
Server Anda mengirimkan beberapa data ke browser pengunjung dalam bentuk cookie. Browser dapat menerima cookie. Jika ya, itu disimpan sebagai rekaman teks biasa di hard drive pengunjung. Sekarang, saat pengunjung tiba di halaman lain di situs Anda, browser mengirimkan cookie yang sama ke server untuk diambil. Setelah diambil, server Anda mengetahui/mengingat apa yang disimpan sebelumnya
Cookie adalah catatan data teks biasa dari 5 bidang panjang variabel −
Kedaluwarsa – Tanggal cookie akan kedaluwarsa. Jika ini kosong, cookie akan kedaluwarsa saat pengunjung keluar dari browser
Domain − Nama domain situs Anda
Path − Path ke direktori atau halaman web yang mengatur cookie. Ini mungkin kosong jika Anda ingin mengambil cookie dari direktori atau halaman mana pun
Aman – Jika bidang ini berisi kata "aman", maka cookie hanya dapat diambil dengan server yang aman. Jika bidang ini kosong, tidak ada batasan seperti itu
Name=Value − Cookie diatur dan diambil dalam bentuk key-value pair
Cookie pada awalnya dirancang untuk pemrograman CGI. Data yang terkandung dalam cookie secara otomatis dikirimkan antara browser web dan server web, sehingga skrip CGI di server dapat membaca dan menulis nilai cookie yang disimpan di klien
JavaScript juga dapat memanipulasi cookie menggunakan properti cookie dari objek Dokumen. JavaScript dapat membaca, membuat, memodifikasi, dan menghapus cookie yang berlaku untuk halaman web saat ini
Menyimpan Cookie
Cara paling sederhana untuk membuat cookie adalah dengan menetapkan nilai string ke dokumen. objek cookie, yang terlihat seperti ini
document.cookie = "key1 = value1;key2 = value2;expires = date";Di sini atribut kedaluwarsa bersifat opsional. Jika Anda memberikan atribut ini dengan tanggal atau waktu yang valid, maka cookie akan kedaluwarsa pada tanggal atau waktu tertentu dan setelah itu, nilai cookie tidak akan dapat diakses
Catatan − Nilai cookie mungkin tidak termasuk titik koma, koma, atau spasi putih. Untuk alasan ini, Anda mungkin ingin menggunakan fungsi JavaScript escape() untuk menyandikan nilai sebelum menyimpannya di cookie. Jika Anda melakukan ini, Anda juga harus menggunakan fungsi unescape() yang sesuai saat membaca nilai cookie
Contoh
Coba yang berikut ini. Ini menetapkan nama pelanggan dalam cookie masukan
Enter name: _Keluaran
Sekarang mesin Anda memiliki cookie bernama name. Anda dapat menyetel beberapa cookie menggunakan beberapa kunci = pasangan nilai yang dipisahkan dengan koma
Membaca Cookie
Membaca cookie semudah menulisnya, karena nilai dokumennya. objek cookie adalah cookie. Jadi Anda dapat menggunakan string ini kapan pun Anda ingin mengakses cookie. Dokumen. string cookie akan menyimpan daftar pasangan nama=nilai yang dipisahkan oleh titik koma, di mana nama adalah nama cookie dan nilai adalah nilai stringnya
Anda dapat menggunakan fungsi split() string untuk memecah string menjadi kunci dan nilai sebagai berikut −
Contoh
Coba contoh berikut untuk mendapatkan semua cookie
click the following button and see the result:
Catatan - Di sini panjang adalah metode kelas Array yang mengembalikan panjang array. Kami akan membahas Array di bab terpisah. Pada saat itu, cobalah mencernanya
Catatan − Mungkin ada beberapa cookie lain yang sudah disetel di mesin Anda. Kode di atas akan menampilkan semua cookie yang disetel di mesin Anda
Mengatur Tanggal Kedaluwarsa Cookie
Anda dapat memperpanjang umur cookie di luar sesi browser saat ini dengan menyetel tanggal kedaluwarsa dan menyimpan tanggal kedaluwarsa di dalam cookie. Ini dapat dilakukan dengan menyetel atribut 'kedaluwarsa' ke tanggal dan waktu
Contoh
Coba contoh berikut. Ini mengilustrasikan cara menghapus cookie dengan menyetel tanggal kedaluwarsa menjadi satu bulan di belakang tanggal saat ini