Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

JavaScript Firebase क्लाउड मैसेजिंग क्लाइंट ऐप सेट करें

FCM जावास्क्रिप्ट एपीआई आप ब्राउज़रों कि समर्थन में चल रहे वेब एप्लिकेशन में सूचना संदेश प्राप्त करने देता है पुश एपीआई । यह इस में सूचीबद्ध ब्राउज़र संस्करण भी शामिल है समर्थन मैट्रिक्स पुश एपीआई के माध्यम से और क्रोम एक्सटेंशन।

FCM SDK केवल HTTPS पर प्रदर्शित पृष्ठों में समर्थित है। यह इसके सेवा कर्मियों के उपयोग के कारण है, जो केवल HTTPS साइटों पर उपलब्ध हैं। आप एक प्रदाता की जरूरत है, Firebase होस्टिंग के लिए मुफ्त HTTPS अपने खुद के डोमेन पर होस्टिंग की सिफारिश की है।

FCM JavaScript API के साथ आरंभ करने के लिए, आपको अपने वेब ऐप में Firebase जोड़ना होगा और पंजीकरण टोकन तक पहुंचने के लिए तर्क जोड़ना होगा।

अपने JavaScript प्रोजेक्ट में Firebase जोड़ें

आप पहले से ही नहीं है, तो आपकी जावास्क्रिप्ट परियोजना के लिए Firebase जोड़ने

यदि आप वर्तमान में वेब के लिए FCM का उपयोग करने और एसडीके 6.7.0 या बाद में करने के लिए उन्नत करने के लिए चाहते हैं, तो आप सक्षम करना होगा FCM पंजीकरण एपीआई Google क्लाउड कंसोल में अपनी परियोजना के लिए। जब आप एपीआई को सक्षम करते हैं, तो सुनिश्चित करें कि आप उसी Google खाते से क्लाउड कंसोल में लॉग इन हैं जिसका उपयोग आप फायरबेस के लिए करते हैं, और सही प्रोजेक्ट का चयन करना सुनिश्चित करें। FCM SDK को जोड़ने वाले नए प्रोजेक्ट में यह API डिफ़ॉल्ट रूप से सक्षम है।

FCM के साथ वेब क्रेडेंशियल कॉन्फ़िगर करें

FCM वेब इंटरफ़ेस समर्थित वेब पुश सेवाओं के लिए अनुरोध भेजने को अधिकृत करने के लिए "स्वैच्छिक अनुप्रयोग सर्वर पहचान," या "VAPID" कुंजी नामक वेब क्रेडेंशियल का उपयोग करता है। सूचनाओं को पुश करने के लिए अपने ऐप की सदस्यता लेने के लिए, आपको अपने फायरबेस प्रोजेक्ट के साथ कुछ चाबियों को जोड़ना होगा। आप या तो एक नई कुंजी जोड़ी बना सकते हैं या फायरबेस कंसोल के माध्यम से अपनी मौजूदा कुंजी जोड़ी आयात कर सकते हैं।

एक नई कुंजी जोड़ी बनाएं

  1. खोलें क्लाउड संदेश Firebase कंसोल सेटिंग्स फलक के टैब और वेब विन्यास अनुभाग पर जाएं।
  2. वेब पुश प्रमाण पत्र टैब में, क्लिक करें कुंजी युग्म जनरेट। कंसोल एक नोटिस प्रदर्शित करता है कि कुंजी जोड़ी उत्पन्न हुई थी, और सार्वजनिक कुंजी स्ट्रिंग और जोड़ी गई तिथि प्रदर्शित करता है।

मौजूदा कुंजी युग्म आयात करें

यदि आपके पास एक मौजूदा कुंजी जोड़ी है जिसका आप पहले से अपने वेब ऐप के साथ उपयोग कर रहे हैं, तो आप इसे एफसीएम में आयात कर सकते हैं ताकि आप एफसीएम एपीआई के माध्यम से अपने मौजूदा वेब ऐप इंस्टेंस तक पहुंच सकें। कुंजियां आयात करने के लिए, आपके पास Firebase प्रोजेक्ट का स्वामी-स्तरीय एक्सेस होना चाहिए. बेस 64 यूआरएल सुरक्षित एन्कोडेड फॉर्म में अपनी मौजूदा सार्वजनिक और निजी कुंजी आयात करें:

  1. खोलें क्लाउड संदेश Firebase कंसोल सेटिंग्स फलक के टैब और वेब विन्यास अनुभाग पर जाएं।
  2. वेब पुश प्रमाण पत्र टैब में, खोजने के लिए और कड़ी पाठ का चयन करें, "किसी मौजूदा कुंजी युग्म आयात करते हैं।"
  3. आयात में एक महत्वपूर्ण जोड़ी संवाद, इसी क्षेत्र में अपने सार्वजनिक और निजी कुंजियों प्रदान करते हैं और आयात पर क्लिक करें। कंसोल सार्वजनिक कुंजी स्ट्रिंग और जोड़े गए दिनांक को प्रदर्शित करता है।

अपने ऐप की कुंजी जोड़ने के लिए निर्देशों के लिए, देखना अपने अनुप्रयोग में कॉन्फ़िगर वेब साख । चाबियों का प्रारूप और उन्हें कैसे उत्पन्न करने के लिए के बारे में अधिक जानकारी के लिए, आवेदन सर्वर कुंजी

मैसेजिंग ऑब्जेक्ट प्राप्त करें

वेब संस्करण 9

import { getMessaging } from "firebase/messaging";

const messaging = getMessaging();

वेब संस्करण 8

const messaging = firebase.messaging();

अपने ऐप में वेब क्रेडेंशियल कॉन्फ़िगर करें

विधि getToken(): Promise<string> जब विभिन्न धक्का सेवाओं के लिए संदेश अनुरोध भेजने FCM नीरस कुंजी क्रेडेंशियल का उपयोग करने की अनुमति देता है। कुंजी आप के निर्देशों के अनुसार उत्पन्न या आयातित का उपयोग FCM के साथ विन्यस्त वेब साख , इसे अपने कोड में जोड़ने के बाद संदेश वस्तु लिया गया है:

// Add the public key generated from the console here.
messaging.getToken({vapidKey: "BKagOny0KF_2pCJQ3m....moL0ewzQ8rZu"});

पंजीकरण टोकन तक पहुंचें

जब आप वर्तमान पंजीकरण एक ऐप्लिकेशन उदाहरण के लिए टोकन प्राप्त करने की जरूरत है, फोन getToken । यदि अधिसूचना अनुमति नहीं दी गई है, तो यह विधि उपयोगकर्ता से अधिसूचना अनुमति मांगेगी। अन्यथा, यह एक टोकन लौटाता है या किसी त्रुटि के कारण वादे को अस्वीकार करता है।

संदेश सेवा एक की आवश्यकता है firebase-messaging-sw.js फ़ाइल। जब तक आप पहले से ही एक है firebase-messaging-sw.js फ़ाइल, उस नाम के साथ एक खाली फ़ाइल बनाने और अपने डोमेन के रूट में यह एक टोकन पुन: प्राप्त करने से पहले जगह। आप क्लाइंट सेटअप प्रक्रिया में बाद में फ़ाइल में अर्थपूर्ण सामग्री जोड़ सकते हैं।

वर्तमान टोकन पुनर्प्राप्त करने के लिए:

वेब संस्करण 9

import { getMessaging, getToken } from "firebase/messaging";

// Get registration token. Initially this makes a network call, once retrieved
// subsequent calls to getToken will return from cache.
const messaging = getMessaging();
getToken(messaging, { vapidKey: '<YOUR_PUBLIC_VAPID_KEY_HERE>' }).then((currentToken) => {
  if (currentToken) {
    // Send the token to your server and update the UI if necessary
    // ...
  } else {
    // Show permission request UI
    console.log('No registration token available. Request permission to generate one.');
    // ...
  }
}).catch((err) => {
  console.log('An error occurred while retrieving token. ', err);
  // ...
});

वेब संस्करण 8

// Get registration token. Initially this makes a network call, once retrieved
// subsequent calls to getToken will return from cache.
messaging.getToken({ vapidKey: '<YOUR_PUBLIC_VAPID_KEY_HERE>' }).then((currentToken) => {
  if (currentToken) {
    // Send the token to your server and update the UI if necessary
    // ...
  } else {
    // Show permission request UI
    console.log('No registration token available. Request permission to generate one.');
    // ...
  }
}).catch((err) => {
  console.log('An error occurred while retrieving token. ', err);
  // ...
});

टोकन प्राप्त करने के बाद, इसे अपने ऐप सर्वर पर भेजें और अपनी पसंदीदा विधि का उपयोग करके इसे स्टोर करें।

अगला कदम

सेटअप चरणों को पूरा करने के बाद, वेब के लिए FCM (जावास्क्रिप्ट) के साथ आगे बढ़ने के लिए यहां कुछ विकल्प दिए गए हैं: