סביבת השרת שלך ו-FCM
צד השרת של Firebase Cloud Messaging מורכב משני רכיבים:
- ה- FCM הקצה המסופק על ידי Google.
- שרת האפליקציות שלך או סביבת שרת מהימנה אחרת שבה פועלת לוגיקת השרת שלך, כגון Cloud Functions for Firebase או סביבות ענן אחרות המנוהלות על ידי Google.
שרת האפליקציות או סביבת השרת המהימנה שלך שולחים בקשות הודעות ל-FCM העורפי, ולאחר מכן מנתב הודעות לאפליקציות לקוח הפועלות במכשירים של המשתמשים.
דרישות לסביבת השרת המהימנה
סביבת שרת האפליקציה שלך חייבת לעמוד בקריטריונים הבאים:
- מסוגל לשלוח בקשות הודעות מעוצבות כהלכה אל ה-backend של FCM.
- מסוגל לטפל בבקשות ולשלוח אותן מחדש באמצעות גיבוי אקספוננציאלי.
- מסוגל לאחסן בצורה מאובטחת אישורי הרשאת שרת ואסימוני רישום לקוח.
בחירת אפשרות שרת
תצטרך להחליט על דרך לקיים אינטראקציה עם שרתי FCM: באמצעות ה-SDK של Firebase Admin או בפרוטוקול הגולמי. בגלל התמיכה שלו בשפות תכנות פופולריות ושיטות הנוחות שלו לטיפול באימות והרשאה, Firebase Admin SDK היא השיטה המומלצת.
האפשרויות לאינטראקציה עם שרתי FCM כוללות את הדברים הבאים:
- Firebase Admin SDK, שיש לו תמיכה ב- Node , Java , Python , C# ו- Go .
- FCM HTTP v1 API , REST API עם הרשאה מאובטחת ויכולות גמישות להעברת הודעות חוצות-פלטפורמות (SDK Admin של Firebase מבוסס על פרוטוקול זה ומספק את כל היתרונות הגלומים בו).
Firebase Admin SDK עבור FCM
ה-API של Admin FCM מטפל באימות עם הקצה העורפי ומקל על שליחת הודעות וניהול מנויי נושא. עם Firebase Admin SDK, אתה יכול:
- שלח הודעות למכשירים בודדים
- שלח הודעות לנושאים והצהרות תנאים התואמות נושא אחד או יותר.
- הירשם ובטל את הרישום של מכשירים לנושאים וממנו
- בנו מטענים של מסרים המותאמים לפלטפורמות יעד שונות
Admin Node.js SDK מספק שיטות לשליחת הודעות לקבוצות מכשירים.
כדי להגדיר את Firebase Admin SDK, ראה הוסף את Firebase Admin SDK לשרת שלך . אם כבר יש לך פרויקט Firebase, התחל עם הוסף את ה-SDK . כמו כן, הקפד להפעיל את Cloud Messaging API בדף ההגדרות של Cloud Messaging עבור הפרויקט שלך. לאחר מכן, לאחר התקנת Firebase Admin SDK, תוכל להתחיל לכתוב לוגיקה לבניית בקשות שליחה .
פרוטוקול שרת FCM
FCM מספקת את FCM HTTP v1 API למפתחים המעדיפים פרוטוקול שרת גולמי.
כדי לשלוח הודעה, שרת האפליקציה מוציא בקשת POST עם כותרת HTTP וגוף HTTP המורכב מזוגות ערכי מפתח JSON. לפרטים על אפשרויות הכותרת והגוף, ראה בניית בקשות שליחת שרת אפליקציות