Notifications API ve İzin Yönetimi
Bildirim izinlerini doğru zamanda isteyip React'ten tarayıcı bildirimleri gönderin
Notifications API ve İzin Yönetimi, CoddyKit'te ücretsiz bir React Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, React Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. React Academy kursu toplamda 4 dersten oluşur.
Notification.permission Özelliği
Notification.permission, mevcut izin durumunu yansıtan statik bir dizedir. "granted" (kullanıcı izin verdi), "denied" (kullanıcı engelledi) veya "default" (henüz sorulmadı) olabilir. Gereksiz hatalardan kaçınmak için bildirimleri göstermeyi denemeden önce bu özelliği denetleyin.
İzin İsteme
Notification.requestPermission(), yeni izin dizesiyle sonuçlanan bir vaat döndürür. Bu yöntemi yalnızca açık bir kullanıcı eylemine yanıt olarak çağırın; sayfa yüklenirken çağırmayın. Tarayıcılar sayfa yüklenir yüklenmez açılan izin istemlerini yok sayar veya bastırır; kullanıcılar da bağlam olmadan görünen bu istemleri rahatsız edici bulur.
En İyi Uygulama: Kullanıcı Eylemiyle İzin İsteme
En etkili yaklaşım, avantajı açıklayan uygulama içi bir istem göstermek ve ardından requestPermission() çağrılmadan önce kullanıcının "Bildirimleri etkinleştir" düğmesine tıklamasına izin vermektir. Bu yöntem bağlam sağlar, kabul oranlarını artırır ve tarayıcının sitenizi istenmeyen içerik gönderiyor olarak işaretlemesini önler. Sayfa yüklenirken hiçbir zaman izin istemeyin.
Bildirim Oluşturma
new Notification(title, options), bir sistem bildirimi oluşturur ve görüntüler. İlk bağımsız değişken başlık dizesidir. İkinci bağımsız değişken olan options nesnesi, body (alt başlık metni), icon (görsel URL'si) ve yinelenen bildirimleri önlemek için tag gibi özellikleri kabul eder. Bu işlem yalnızca izin "granted" olduğunda çalışır.
Bildirim Seçenekleri
Temel bildirim seçenekleri şunlardır: başlığın altında açıklayıcı metin için body, küçük bir görsel için icon, OS bildirim alanında gösterilen küçük tek renkli simge için badge, büyük satır içi görsel için image, aynı etikete sahip önceki bildirimin yerine yenisini koymak için tag ve bildirimi kullanıcı işlem yapana kadar tutmak için requireInteraction: true.
Bildirim Olayları
Notification örneği birkaç olay tetikler: Kullanıcı bildirime tıkladığında onclick çalışır; bunu pencereyi öne getirmek ve yönlendirme yapmak için kullanabilirsiniz. Bildirim kapatıldığında onclose, oluşturulurken bir sorun yaşandığında ise onerror çalışır. İşleyicileri new Notification() çağrısından sonra döndürülen örneğe ekleyin.
Bildirimleri Programla Kapatma
Döndürülen Notification örneğini bir değişkende saklayın ve programlı olarak kapatmak için notification.close() çağrısı yapın. Bu yöntem, belirli bir süre sonra önemini yitiren zamana duyarlı bildirimler için kullanışlıdır. Birkaç saniye sonra otomatik olarak kapatmak için setTimeout ile birlikte kullanın.
Bildirimler İçin HTTPS Gereksinimi
Bildirimler API'si güvenli bir bağlam gerektirir. HTTP sayfalarında tarayıcıya bağlı olarak typeof Notification === 'undefined' sonucu alınır veya API tamamen devre dışı bırakılır. Bu, kötü amaçlı sitelerin kullanıcıları sahte sistem mesajlarıyla bombardımana tutmasını önleyen bir güvenlik önlemidir. Kullanmadan önce kullanılabilirliği her zaman denetleyin.
useNotifications Kancası Oluşturma
Bir useNotifications kancası iki yöntem sunabilir: requestPermission() ve showNotification(title, options). Kanca, mevcut izin durumunu kendi içinde izler ve izin istedikten sonra bu durumu günceller. Kanca bu denetimleri kendi içinde gerçekleştirdiği için bileşenler izin denetimleriyle uğraşmadan showNotification çağrısı yapabilir.
Görünürlük API'siyle Birleştirme
Sayfa Görünürlüğü API'si, document.hidden özelliğini ve visibilitychange olayını sunar. Kullanıcı sekmeyi zaten görüntülemiyorsa bildirimler daha anlamlıdır. Sayfa zaten ön plandayken gereksiz uyarılardan kaçınmak için bildirim göstermeden önce document.hidden === true koşulunu denetleyin.
Hizmet Çalışanları ve Anlık Bildirimler
Burada gösterilen Bildirimler API'si, sayfanın kendisi tarafından yerel olarak tetiklenen bildirimler içindir. Sayfa kapalıyken bile ulaşan anlık bildirimler için Push API'sini bir hizmet çalışanıyla birlikte kullanmanız gerekir. Hizmet çalışanı push olayını alır ve arka planda self.registration.showNotification() çağrısını yapar.
Notification.permission Değerleri
Aşağıdakilerden hangisi Notification.permission için geçerli bir değer DEĞİLDİR (NOT)?
Ders Özeti: Bildirimler API'si
Notification.permission değeri granted, denied veya default olabilir. İzni her zaman sayfa yüklenirken değil, bir kullanıcı eylemiyle isteyin. Bildirim oluşturmak için new Notification(title, options) kullanın ve pencereyi öne getirmek için onclick olayını ele alın. Bildirimleri yalnızca sekme gizliyken göstermek için bunu Görünürlük API'siyle birleştirin.
Yapay zeka eğitmeniyle React öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 88
- Dersler
- 324
Sıkça Sorulan Sorular
“Notifications API ve İzin Yönetimi” dersi ücretsiz mi?
Evet — “Notifications API ve İzin Yönetimi” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve React Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. React Academy kursu toplamda 4 dersten oluşur.
“Notifications API ve İzin Yönetimi” dersinde ne öğreneceğim?
Bildirim izinlerini doğru zamanda isteyip React'ten tarayıcı bildirimleri gönderin React Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
React Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te React Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Notifications API ve İzin Yönetimi” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu React Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her React Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Clipboard API: React'te Kopyalama ve Yapıştırma
- React Bileşenlerinde Geolocation API
- Notifications API ve İzin Yönetimi
- Kaydırmayla Tetiklenen Efektler için IntersectionObserver