Kuki CGI Ruby
Protokol HTTP ialah protokol tanpa kewarganegaraan. Tetapi untuk laman web komersial, ia perlu mengekalkan maklumat sesi antara halaman yang berbeza.
Jika pengguna perlu melompat ke halaman semasa proses pendaftaran tapak web, tetapi mesti memastikan maklumat yang diisi sebelum ini tidak hilang.
Dalam kes ini, Cookie membantu kami menyelesaikan masalah dengan baik.
Bagaimanakah kuki berfungsi?
Hampir semua pereka laman web menggunakan kuki semasa mereka bentuk tapak web, kerana mereka ingin menyediakan pengguna yang melayari tapak web dengan persekitaran penyemakan imbas yang lebih mesra dan kemanusiaan, dan pada masa yang sama, mereka juga boleh mengumpul maklumat Pelawat dengan lebih tepat.
Menulis dan membaca
Pengumpulan kuki ialah pengumpulan data yang dilampirkan pada objek Respons dan objek Request Apabila menggunakannya, anda perlu menambah Respons atau Request di hadapan.
Sintaks yang digunakan untuk menghantar Kuki kepada klien biasanya:
Apabila set Kuki yang tidak wujud ditetapkan, ia akan dibuat pada klien Jika Kuki sudah wujud, mereka akan diganti. Memandangkan Kuki dihantar kepada klien sebagai sebahagian daripada maklumat pengepala penghantaran HTTP, kod untuk menghantar Kuki kepada klien biasanya diletakkan sebelum teg fail HTML yang dihantar ke penyemak imbas.
Jika pengguna ingin membaca Kuki, mereka mesti menggunakan koleksi Kuki objek Permintaan Kaedah penggunaannya ialah: Perlu diingatkan bahawa penyemak imbas hanya boleh berkomunikasi dengan Pelayan sebelum pelayan memuat turun sebarang data ke penyemak imbas. Lakukan pertukaran data pengumpulan Kuki Setelah penyemak imbas mula menerima data yang dimuat turun oleh Pelayan, pertukaran data Kuki akan berhenti Untuk mengelakkan ralat, respons.Buffer=True mesti ditambah di hadapan program dan.
Atribut koleksi
1. Atribut tamat tempoh: Atribut ini digunakan untuk menetapkan tempoh untuk Kuki, buka sahaja halaman web. Panggil kuki yang disimpan Jika tempoh ini tamat, kuki akan dipadamkan secara automatik. seperti: Tempoh sah kuki ditetapkan pada 1 April 2004 dan ia akan dipadamkan secara automatik pada masa itu. Jika kuki tidak mempunyai tempoh sah yang ditetapkan, kitaran hayatnya bermula daripada membuka penyemak imbas dan berakhir apabila penyemak imbas ditutup Kitaran hayat akan tamat selepas setiap larian dan akan bermula semula pada kali berikutnya ia dijalankan.
2.Atribut domain: Atribut ini mentakrifkan keunikan data yang dihantar oleh Cookies. Jika anda hanya menghantar Kuki tertentu ke halaman utama _blank"> Sohu, anda boleh menggunakan kod berikut:
3.Atribut laluan: mentakrifkan bahawa Kuki hanya dihantar Untuk permintaan laluan yang ditentukan, jika atribut Path tidak ditetapkan, laluan lalai perisian aplikasi digunakan
5 >Kuki ditetapkan dan diambil semula dalam bentuk pasangan nilai kunci >
Mengendalikan Kuki dalam Ruby- Anda boleh mencipta objek bernama kuki dan menyimpan maklumat teks, menghantar maklumat ke penyemak imbas. , panggil CGI.out untuk menetapkan pengepala kuki:
#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cookie = CGI::Cookie.new('name' => 'mycookie', 'value' => 'Zara Ali', 'expires' => Time.now + 3600) cgi.out('cookie' => cookie) do cgi.head + cgi.body { "Cookie stored" } end
Seterusnya kita kembali ke halaman ini dan mencari nilai kuki, seperti yang ditunjukkan di bawah:#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cookie = cgi.cookies['mycookie'] cgi.out('cookie' => cookie) do cgi.head + cgi.body { cookie[0] } end
Objek CGI::Cookie mengandungi parameter berikut apabila digunakan segera:
参数 | 描述 |
---|---|
name | 规定 cookie 的名称。 |
value | 规定 cookie 的值。 |
expire | 规定 cookie 的有效期。 |
path | 规定 cookie 的服务器路径。 |
domain | 规定 cookie 的域名。 |
secure | 规定是否通过安全的 HTTPS 连接来传输 cookie。 |