Menyahpepijat Rentetan IAB GPP dalam Konsol Pelayar: Tutorial Langkah demi Langkah
Mengapa Masalah GPP Sukar Dikesan
Apabila pelawat AS memilih keluar daripada jualan atau perkongsian datanya, pilihan itu mesti sampai kepada setiap rakan kongsi iklan pada halaman. Dengan IAB Global Privacy Platform (GPP), ia dihantar sebagai rentetan padat dan senarai ID seksyen. Jika salah satunya salah — hilang, lapuk atau membawa seksyen yang salah — tiada apa yang kelihatan rosak. Iklan masih dimuatkan, sepanduk masih nampak baik, dan masalahnya hanya muncul kemudian apabila rakan kongsi mengabaikan pilih keluar atau membida lebih rendah untuk inventori anda.
Berita baiknya, hampir semuanya boleh diperiksa daripada konsol pelayar. Tutorial ini menerangkan semakan mengikut urutan yang akan kami jalankan pada halaman langsung.
Langkah 1: Sahkan API Wujud dan Sedia
CMP yang serasi dengan GPP mendedahkan fungsi global __gpp. Buka DevTools pada halaman anda dan jalankan arahan ping:
__gpp('ping', function (data) { console.log(data); });
Objek yang dipulangkan memberitahu banyak perkara sepintas lalu:
- gppVersion — patut menunjukkan 1.1 untuk pelaksanaan semasa.
- cmpStatus — sama ada CMP telah dimuatkan atau menemui ralat.
- cmpDisplayStatus — sama ada sepanduk kelihatan, tersembunyi atau dilumpuhkan untuk pelawat ini.
- signalStatus — “ready” setelah CMP menetapkan keadaan persetujuan, “not ready” semasa ia masih memutuskan.
- supportedAPIs — seksyen yang boleh dihasilkan CMP.
- applicableSections — ID seksyen yang terpakai kepada pelawat ini sekarang.
- gppString — rentetan terkod itu sendiri.
Jika __gpp tidak ditakrifkan, stub CMP tiada atau dimuatkan terlalu lewat. Stub mesti ada sebelum mana-mana skrip iklan yang mengharapkannya, jika tidak skrip tersebut tidak akan nampak CMP dan sama ada menunggu atau meneruskan tanpa isyarat.
Langkah 2: Semak Seksyen yang Terpakai
Setiap rangka kerja privasi dalam GPP mempunyai ID seksyen berangka. Yang paling kerap ditemui penerbit ialah 2 (EU TCF v2), 5 (TCF Kanada), 7 (US National, “usnat”) dan 8 ke atas untuk seksyen negeri individu seperti California, Virginia, Colorado, Utah dan Connecticut. Pelawat dari negeri AS biasanya akan melihat seksyen kebangsaan atau seksyen negeri yang berkaitan dalam applicableSections, bukan seksyen EU.
Uji dari beberapa lokasi. Pepijat biasa ialah CMP yang mengesan geografi dengan betul untuk sepanduk tetapi menulis seksyen lalai ke dalam rentetan tanpa mengira, atau sebaliknya. Menggunakan VPN atau alat pratonton CMP anda, bandingkan apa yang ditunjukkan sepanduk dengan apa yang dilaporkan applicableSections.
Langkah 3: Baca Data Seksyen
Daripada menyahkod rentetan secara manual, minta CMP memberikan seksyen yang telah dihuraikan:
__gpp('getSection', function (data, success) { console.log(data, success); }, 'usnat');
Dalam seksyen US National, medan pilih keluar menggunakan konvensyen mudah: 0 bermaksud tidak berkenaan, 1 bermaksud pengguna memilih keluar, dan 2 bermaksud pengguna tidak memilih keluar. Tumpukan dahulu pada medan ini:
- SaleOptOut dan SharingOptOut
- TargetedAdvertisingOptOut
- Medan notice yang sepadan, yang merekodkan sama ada pelawat telah diberi notis tentang setiap amalan
Kini lakukan pilih keluar pada halaman — klik pautan “Do Not Sell or Share” anda atau togol tetapan dalam pusat keutamaan — dan jalankan getSection sekali lagi. Medan pilih keluar patut bertukar daripada 2 kepada 1. Jika tidak, UI dan isyarat tidak selaras.
Langkah 4: Uji Laluan Global Privacy Control
Beberapa undang-undang negeri mengkehendaki perniagaan menganggap isyarat Global Privacy Control sebagai pilih keluar. Aktifkan GPC dalam pelayar atau sambungan yang menyokongnya, sahkan navigator.globalPrivacyControl memulangkan true dalam konsol, kemudian muatkan halaman dalam sesi baharu. Medan pilih keluar yang berkaitan sepatutnya sudah bernilai 1 tanpa pelawat menyentuh sepanduk. Sesetengah seksyen turut mempunyai medan yang menunjukkan pilihan itu datang daripada isyarat GPC.
Langkah 5: Perhatikan Peristiwa, Bukan Sekadar Syot Kilat
Skrip iklan tidak patut membaca rentetan sekali semasa halaman dimuatkan lalu melupakannya. Daftarkan listener untuk melihat apa yang dilihat rakan kongsi:
__gpp('addEventListener', function (evt) { console.log(evt.eventName, evt.pingData); });
Anda patut memerhatikan peristiwa seperti listenerRegistered, signalStatus dan sectionChange. Apabila pelawat menukar pilihan, peristiwa sectionChange dengan rentetan yang dikemas kini patut menyusul. Jika wrapper header bidding atau integrasi ad server anda hanya membaca rentetan sebelum signalStatus menjadi “ready”, ia mungkin menghantar nilai kosong atau lapuk.
Langkah 6: Ikuti Rentetan ke Dalam Permintaan Iklan
Akhir sekali, buka tab Network dan tapis permintaan iklan anda. Banyak endpoint iklan menerima parameter gpp dan gpp_sid (rentetan dan ID seksyen yang terpakai). Semak bahawa:
- kedua-dua parameter wujud pada permintaan daripada pelawat AS;
- rentetan sepadan dengan yang dipulangkan oleh ping pada masa permintaan;
- selepas pilih keluar, permintaan seterusnya membawa rentetan baharu dan bukan yang disimpan dalam cache.
Jika anda menggunakan Prebid.js, sahkan modul pengurusan persetujuannya dikonfigurasi untuk GPP, dan periksa permintaan bida yang keluar daripada wrapper serta panggilan ad server akhir.
Corak Kegagalan Biasa
- Stub dimuatkan selepas tag iklan — rakan kongsi langsung tidak nampak CMP.
- Seksyen salah untuk wilayah — seksyen EU dihantar untuk trafik AS, atau tiada seksyen langsung.
- UI dan isyarat tidak selaras — togol berubah, rentetan tidak.
- GPC diabaikan — isyarat pelayar tidak pernah menjadi pilih keluar.
- Rentetan lapuk dalam permintaan — wrapper menyimpan dalam cache nilai pertama yang dilihatnya.
Perkara Utama
- Mulakan dengan ping: versi, status, seksyen yang terpakai dan rentetan memberitahu kebanyakan ceritanya.
- Gunakan getSection untuk membaca medan pilih keluar; 1 bermaksud telah memilih keluar, 2 bermaksud belum.
- Uji pautan pilih keluar dan GPC secara berasingan dan sahkan kedua-duanya mengubah isyarat.
- Dengar peristiwa dan tunggu isyarat “ready” sebelum permintaan iklan membaca rentetan.
- Sahkan gpp dan gpp_sid dalam permintaan rangkaian sebenar, sebelum dan selepas pilih keluar.