Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk mengenal pasti komputer yang melawati tapak web secara unik dalam JavaScript?

Bagaimana untuk mengenal pasti komputer yang melawati tapak web secara unik dalam JavaScript?

WBOY
WBOYke hadapan
2023-09-13 12:33:03664semak imbas

如何在 JavaScript 中唯一标识访问网站的计算机?

Setiap kali kami membuat sebarang aplikasi atau tapak web, kami perlu mengenal pasti komputer yang mengakses tapak web secara unik. Terdapat banyak faedah untuk mengenal pasti komputer secara unik.

Sebagai contoh, anda menyediakan beberapa perkhidmatan kepada pengguna. Dengan mengenal pasti komputer secara unik, anda boleh menawarkan percubaan percuma apabila pengguna melawat tapak anda daripada peranti baharu buat kali pertama. Apabila pengguna kembali, anda boleh meminta mereka membeli versi premium atau melanggan apl anda.

Di sini kami akan menggunakan kuki untuk mengenal pasti komputer yang melawati tapak web.

Apakah itu biskut?

Kuki membenarkan pembangun menyimpan maklumat pengguna dalam penyemak imbas. Sebagai contoh, kita boleh menghantar data dari pelayan ke penyemak imbas dan menyimpannya dalam penyemak imbas. Jadi, apabila pengguna melawat semula tapak web, ia akan mendapat data daripada kuki dan bukannya daripada pelayan. Oleh itu, kuki boleh meningkatkan prestasi aplikasi.

Dalam contoh kami, kami boleh menetapkan kuki untuk tamat tempoh dalam 100 tahun apabila pengguna mula-mula melawat tapak web. Selepas itu, apabila pengguna melawat tapak web sekali lagi, kami menyemak sama ada kuki itu wujud dan kemudian kami boleh mengatakan bahawa pengguna melawat semula tapak web tersebut.

Tatabahasa

Pengguna boleh menetapkan dan mendapatkan kuki pada pelayar web mereka dengan mengikut sintaks berikut.

// to set cookies
document.cookie = "isVisited=true";

// to get cookies
let ca = decodeURIComponent(document.cookie).split(';'); 

Dalam sintaks di atas, kami menetapkan rentetan dengan pasangan nilai kunci kepada document.cookie untuk menetapkan kuki pada penyemak imbas. Untuk mendapatkan kuki, kami hanya boleh menggunakan document.cookie yang mengembalikan susunan kuki.

Langkah

Langkah 1 - Buat fungsi fetchCookies().

Langkah 2 - Dalam fungsi fetchCookies(), gunakan document.cookie untuk mendapatkan kuki dalam format tatasusunan dan gunakan kaedah decodeURIComponent() untuk menyahkod kuki.

Langkah 3 - Ulangi tatasusunan menggunakan gelung for.

Langkah 4 - Untuk setiap elemen tatasusunan, keluarkan ruang pada permulaan tatasusunan.

Langkah 5 - Semak sama ada elemen tatasusunan mengandungi kunci pada indeks 0th menggunakan kaedah indexOf() dan dapatkan nilai kunci menggunakan kaedah substring().

Langkah 6 - Kembalikan nilai kunci tertentu.

Langkah 7 - Buat fungsi fetchCookies(). Dalam fungsi fetchCookies(), panggil fungsi getCookie() dan semak sama ada kuki itu wujud.

Langkah 8 - Tetapkan kuki jika kuki kosong.

Langkah 9 - Cetak mesej berdasarkan sama ada kuki yang diperlukan kosong atau tidak.

Contoh

Dalam contoh di bawah, kami menetapkan "isValidate" kepada nilai "benar" dalam kuki setiap kali pengguna melawat tapak web untuk kali pertama. Setiap kali pengguna melawat tapak untuk kali kedua, kami mendapat "isValidate" dalam kuki, jadi kami mencetak mesej seperti "Selamat datang kembali ke tapak."

<html>
<body>
   <h3>Using the <i> Cookies </i> to uniquely identify computers visiting web site in JavaScript</h3>
   <div id = "content"> </div>
   <script>
      let content = document.getElementById('content');
      
      // function to get cookies
      function fetchCookies(cname) {
         let key = cname + "=";
         let ca = decodeURIComponent(document.cookie).split(';');
         for (let i = 0; i < ca.length; i++) {
            let part = ca[i];
            while (part.charAt(0) == ' ') {
               part = part.substring(1);
            }
            if (part.indexOf(key) == 0) {
               return part.substring(key.length, part.length);
            }
         }
         return null;
      }
      
      // set cookies to uniquely identify the computer visiting the website
      function checkCookies() {
         var cookies = fetchCookies("isVisited");
         if (cookies == null) {
            content.innerHTML = "Welcome to the website";
            document.cookie = "isVisited=true";
         } else {
            content.innerHTML = "Welcome back to the website";
         }
      }
      checkCookies();
   </script>
</body>
</html>

Contoh

Dalam contoh di bawah, setiap kali pengguna melawat tapak untuk kali pertama, kami menggunakan kotak gesaan untuk menanyakan nama mereka dan memaparkan mesej alu-aluan. Selain itu, kami menetapkan kuki untuk sah selama 100 tahun.

Setiap kali pengguna melawat untuk kali kedua, kami menunjukkan mesej alu-aluan dengan nama mereka tanpa meminta nama mereka.

<html>
<body>
   <h3>Using the <i> Cookies </i> to uniquely identify computers visiting web site in JavaScript</h3>
   <div id = "content"> </div>
   <script>
      let content = document.getElementById('content');
      
      // function to get cookies
      function fetchCookies(cname) {
         let key = cname + "=";
         let ca = decodeURIComponent(document.cookie).split(';');
         for (let i = 0; i < ca.length; i++) {
            let part = ca[i];
            while (part.charAt(0) == ' ') {
               part = part.substring(1);
            }
            if (part.indexOf(key) == 0) {
               return part.substring(key.length, part.length); 
            }
         }
         return null;
      }
      
      // set cookies to uniquely identify the computer visiting the website
      function checkCookies() {
         var cookies = fetchCookies("customCookie");
         if (cookies == null) {
            let name = prompt("Enter your name", "Shubham");
            document.cookie = "customCookie=" + name + "; expires=Thu, 23 Oct 2120 12:00:00 UTC; path=/";
            content.innerHTML = "How are you " + name + "?";
         }
         else {
            content.innerHTML = "Hey, " + cookies + " You visited our site again!";
         }
      }
      checkCookies();
   </script>
</body>
</html> 

Pengguna belajar menggunakan kuki dalam JavaScript untuk mengenal pasti komputer yang melawati tapak web secara unik. Walau bagaimanapun, kuki mempunyai beberapa had. Jika pengguna mengosongkan kuki, kami tidak dapat mengenal pasti komputer itu secara unik. Selain itu, kita perlu menetapkan tarikh luput kuki kepada 100 tahun. Selain itu, kami tidak boleh mengenal pasti komputer secara unik jika pengguna menggunakan penyemak imbas yang berbeza.

Penyelesaian terbaik untuk mengatasi semua masalah di atas adalah dengan menggunakan Google Analytics.

Atas ialah kandungan terperinci Bagaimana untuk mengenal pasti komputer yang melawati tapak web secara unik dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam