Rumah  >  Artikel  >  hujung hadapan web  >  Cara Mengendalikan Persetujuan Kuki dalam Mana-mana Apl Next.js

Cara Mengendalikan Persetujuan Kuki dalam Mana-mana Apl Next.js

Barbara Streisand
Barbara Streisandasal
2024-10-20 16:38:29828semak imbas

How to Handle Cookie Consent in Any Next.js App

Dalam persekitaran pembangunan web hari ini, pengendalian persetujuan kuki adalah penting untuk memenuhi peraturan privasi seperti Peraturan Perlindungan Data Am (GDPR) dan Privasi Pengguna California Akta (CCPA). Kuki sering digunakan untuk menjejak aktiviti pengguna, memperibadikan kandungan atau mengumpul analitis, tetapi mengumpul data ini memerlukan persetujuan pengguna dalam banyak bidang kuasa. Sebagai pembangun, menjadi tanggungjawab kami untuk memastikan pematuhan dan mencipta pengalaman pengguna yang telus.

Dalam artikel ini, kami akan membincangkan cara mengendalikan persetujuan kuki dalam mana-mana aplikasi Next.js, memfokuskan pada mencipta sepanduk kebenaran kuki, mengurus kuki berdasarkan tindakan pengguna dan memastikan pematuhan undang-undang privasi .

Mengapa Persetujuan Kuki Penting?

  1. Pematuhan Undang-undang: Peraturan GDPR dan CCPA memerlukan tapak web mendapatkan kebenaran yang jelas sebelum mengumpul kuki yang tidak penting seperti kuki penjejakan atau pemasaran.
  2. Ketelusan Pengguna: Sepanduk kebenaran kuki membolehkan pengguna mengetahui jenis data yang sedang dikumpulkan dan memberi mereka kuasa untuk mengawal privasi mereka.
  3. Pengalaman Pengguna: Ia meningkatkan kepercayaan dengan menunjukkan bahawa tapak web anda menghormati privasi pengguna dan menawarkan cara mudah untuk mengurus pilihan kuki.

Langkah untuk Melaksanakan Persetujuan Kuki dalam Apl Next.js

Mari kita ikuti langkah-langkah untuk menambahkan sepanduk kebenaran kuki pada aplikasi Next.js anda.


Langkah 1: Pasang Pustaka Persetujuan Kuki

Walaupun anda boleh mengendalikan persetujuan kuki secara manual, menggunakan perpustakaan menjadikan proses lebih mudah. Salah satu perpustakaan yang paling biasa digunakan untuk persetujuan kuki dalam apl React/Next.js ialah react-cookie-consent. Anda boleh memasangnya dengan menjalankan arahan berikut:

npm install react-cookie-consent
# or using Yarn
yarn add react-cookie-consent

Langkah 2: Buat Komponen Persetujuan Kuki

Setelah pustaka dipasang, kami akan mencipta komponen yang memaparkan sepanduk kebenaran kuki. Sepanduk ini akan memaklumkan pengguna tentang penggunaan kuki dan memberikan pilihan untuk menerima atau menolaknya.

Buat komponen baharu dalam komponen/CookieConsentBanner.js:

npm install react-cookie-consent
# or using Yarn
yarn add react-cookie-consent

Ciri-ciri Utama:

  • lokasi: Menetapkan lokasi sepanduk (bahagian bawah dalam kes ini).
  • onAccept: Menambah logik untuk perkara yang berlaku apabila pengguna menerima kuki (anda boleh, sebagai contoh, menetapkan kuki tertentu di sini).
  • onDecline: Mentakrifkan tingkah laku apabila pengguna menolak kuki.
  • enableDeclineButton: Membenarkan pengguna menolak kuki dengan butang khusus.
  • cookieName: Nama kuki tempat keadaan persetujuan disimpan.

Langkah 3: Tambahkan Sepanduk Persetujuan Kuki pada Reka Letak Global

Untuk memaparkan sepanduk persetujuan kuki merentas semua halaman, sepadukannya ke dalam reka letak utama apl anda. Biasanya, ini boleh dilakukan dalam pages/_app.js atau pages/_app.tsx.

Berikut ialah cara anda boleh memasukkan komponen CookieConsentBanner:

import React from "react";
import CookieConsent from "react-cookie-consent";
import Link from "next/link";

const CookieConsentBanner = () => {
  return (
    <CookieConsent
      location="bottom"
      buttonText="Accept All"
      declineButtonText="Decline"
      enableDeclineButton
      cookieName="yourAppCookieConsent"
      style={{ background: "#2B373B", color: "#FFF" }}
      buttonStyle={{ backgroundColor: "#4CAF50", color: "#FFF", fontSize: "14px" }}
      declineButtonStyle={{ backgroundColor: "#f44336", color: "#FFF", fontSize: "14px" }}
      expires={365}  // Number of days before the cookie expires
      onAccept={() => {
        // Add functionality when user accepts cookies
        console.log("Cookies accepted");
      }}
      onDecline={() => {
        // Add functionality when user declines cookies
        console.log("Cookies declined");
      }}
    >
      This website uses cookies to enhance your experience. By using our website, you consent to the use of cookies. 
      You can read more in our <Link href="/privacy-policy"><a>privacy policy</a></Link>.
    </CookieConsent>
  );
};

export default CookieConsentBanner;

Dengan meletakkannya dalam _app.js, sepanduk akan dipaparkan pada setiap halaman dalam apl Next.js anda, memastikan bahawa tidak kira di mana pengguna menavigasi, mereka akan mempunyai peluang untuk memberikan persetujuan mereka.


Langkah 4: Tambah Halaman Dasar Privasi (Pilihan)

Untuk menjadikan apl anda lebih telus, anda harus memberikan pautan kepada privasi atau dasar kuki anda, yang membolehkan pengguna mengetahui lebih lanjut tentang cara kuki digunakan. Pautan ini telah ditambahkan dalam sepanduk persetujuan kuki (dasar privasi).

Berikut ialah halaman dasar privasi asas (halaman/privacy-policy.js):

import CookieConsentBanner from "../components/CookieConsentBanner";
import '../styles/globals.css';

function MyApp({ Component, pageProps }) {
  return (
    <>
      {/* Your global layout like header/footer */}
      <Component {...pageProps} />
      {/* Add the Cookie Consent Banner */}
      <CookieConsentBanner />
    </>
  );
}

export default MyApp;

Langkah 5: Menguji dan Menyahpepijat

Untuk memastikan semuanya berfungsi seperti yang diharapkan, anda hendaklah:

  • Ujian pada Penyemak Imbas Berbeza: Pastikan sepanduk kebenaran kuki muncul dengan betul merentas pelbagai penyemak imbas dan saiz skrin.
  • Semak Storan Kuki: Selepas pengguna menerima atau menolak kuki, gunakan alatan pembangun penyemak imbas untuk memeriksa kuki yang disimpan.
  • Kemas kini Alat Analitis (jika perlu): Sepadukan analitik atau alatan penjejakan seperti Analitis Google hanya selepas pengguna bersetuju dengan kuki. Anda boleh menambah kod penjejakan secara dinamik dalam pengendali onAccept sepanduk kebenaran kuki.

Langkah 6: Menyesuaikan Gelagat Kuki

Anda boleh menetapkan tingkah laku khusus untuk jenis kuki yang berbeza (cth., analitis, pengiklanan) berdasarkan persetujuan pengguna. Berikut ialah contoh menetapkan kuki tersuai apabila pengguna menerima kuki analitis:

import React from 'react';

const PrivacyPolicy = () => {
  return (
    <div>
      <h1>Privacy Policy</h1>
      <p>This is where you describe how your website collects, uses, and stores data, including cookies.</p>
      {/* Add your privacy and cookie details */}
    </div>
  );
};

export default PrivacyPolicy;

Pendekatan ini membolehkan anda mengendalikan kategori kuki yang berbeza dan mengaktifkannya hanya selepas pengguna memberikan persetujuan yang jelas.


Kesimpulan

Dengan melaksanakan sepanduk persetujuan kuki dalam aplikasi Next.js anda, anda boleh memastikan pematuhan undang-undang privasi data seperti GDPR dan CCPA, sambil memberikan pengguna kawalan ke atas data peribadi mereka. Sama ada anda menggunakan pustaka react-cookie-consent atau penyelesaian tersuai, kuncinya adalah untuk memberi pengguna ketelusan dan pilihan apabila melibatkan penggunaan kuki.

Untuk meringkaskan:

  • Pasang alat pengurusan persetujuan kuki seperti react-cookie-consent.
  • Buat sepanduk yang memberitahu pengguna dan membenarkan mereka menerima atau menolak kuki.
  • Pastikan kuki hanya ditetapkan selepas persetujuan pengguna.
  • Sediakan pautan ke dasar privasi yang menggariskan amalan kuki anda.
  • Uji apl anda untuk memastikan kefungsian merentas penyemak imbas dan peranti.

Atas ialah kandungan terperinci Cara Mengendalikan Persetujuan Kuki dalam Mana-mana Apl Next.js. 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