Rumah >hujung hadapan web >tutorial js >Di manakah kuki disimpan? Nyahsulit mekanisme pertukaran data di belakang tapak web
Kuki ialah fail teks kecil yang disimpan pada komputer pengguna dan digunakan oleh pelayan web untuk menyimpan data pada penyemak imbas pengguna. Fungsi kuki adalah untuk menyimpan dan memindahkan maklumat apabila pengguna melawati laman web untuk memperibadikan laman web dan menjejaki pengguna.
Pertama, mari kita fahami di mana kuki disimpan. Kuki boleh disimpan di lokasi yang berbeza dalam penyemak imbas pengguna. Antaranya, yang paling biasa disimpan pada sistem fail tempatan pengguna, iaitu, dalam folder tertentu pada cakera keras. Kuki sedemikian dipanggil kuki storan tempatan (Kuki Storan Tempatan).
Selain itu, kuki juga boleh disimpan dalam ingatan pelayar iaitu kuki ingatan sementara (Session Cookies). Kuki jenis ini disimpan dalam memori dan hanya sah semasa sesi penyemak imbas pengguna Setelah pengguna menutup penyemak imbas, kuki ini akan dikosongkan.
Apabila mentafsir mekanisme pertukaran data di sebalik tapak web, kita perlu memahami cara kuki berfungsi. Apabila pengguna melawat tapak web buat kali pertama, pelayan web menghantar kuki dengan pengecam unik kepada penyemak imbas pengguna. Penyemak imbas akan menyimpan kuki ini dan melampirkan kuki ini pada pengepala permintaan HTTP dan menghantarnya ke pelayan pada kali berikutnya pengguna melawat tapak web. Pelayan boleh mengenal pasti pengguna berdasarkan pengecam unik dalam kuki dan menyimpan serta membaca data yang berkaitan seperti yang diperlukan.
Untuk lebih memahami mekanisme pertukaran data, di bawah kami menyediakan contoh kod khusus. Sila ambil perhatian bahawa contoh berikut adalah berdasarkan bahasa Java dan teknologi Servlet.
Pertama, kita perlu mencipta Servlet pada pelayan web untuk menerima dan memproses permintaan HTTP.
import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; public class CookieServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { String username = request.getParameter("username"); // 创建一个Cookie对象 Cookie cookie = new Cookie("username", username); // 将Cookie添加到HTTP响应中 response.addCookie(cookie); response.getWriter().println("Cookie已发送并存储成功!"); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { // 从HTTP请求中获取Cookie Cookie[] cookies = request.getCookies(); if (cookies != null) { for (Cookie cookie : cookies) { String name = cookie.getName(); String value = cookie.getValue(); response.getWriter().println(name + ": " + value); } } else { response.getWriter().println("没有找到Cookie!"); } } }
Dalam kod di atas, kami menerima nama pengguna dalam permintaan HTTP dalam kaedah doPost dan mencipta objek Kuki bernama "nama pengguna". Kami kemudian menambahkan kuki pada respons HTTP yang dihantar ke penyemak imbas pengguna dengan memanggil kaedah response.addCookie(cookie)
. response.addCookie(cookie)
方法将Cookie添加到HTTP响应中,从而发送给用户的浏览器。
在doGet方法中,我们通过调用request.getCookies()
方法从HTTP请求中获取Cookie数组。然后,我们可以遍历该数组,获取每个Cookie的名称和值,并通过调用response.getWriter().println()
request.getCookies()
. Kami kemudiannya boleh mengulangi tatasusunan, mendapatkan nama dan nilai setiap kuki, dan mencetaknya ke penyemak imbas dengan memanggil kaedah response.getWriter().println()
. Apabila pengguna mengakses Servlet ini, maklumat kuki boleh disimpan dengan menghantar permintaan POST dengan nama pengguna. Selepas itu, maklumat kuki yang disimpan boleh diperoleh dan dicetak daripada permintaan HTTP dengan menghantar permintaan GET. Perlu diingat bahawa contoh di atas hanya menunjukkan penggunaan asas dan mekanisme pertukaran data Kuki, dan tidak melibatkan fungsi penyulitan dan penyahsulitan tertentu. Jika anda perlu menyulitkan dan menyahsulit kuki, anda boleh menggunakan beberapa algoritma dan alatan penyulitan yang biasa digunakan. 🎜Atas ialah kandungan terperinci Di manakah kuki disimpan? Nyahsulit mekanisme pertukaran data di belakang tapak web. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!