Google Health API משתמש במסגרת חזקה וסטנדרטית לניהול הגישה לנתוני המשתמשים ולאבטחתם. מרכיב מרכזי בתהליך המודרניזציה הזה הוא המעבר משיטת ההרשאה של Fitbit מדור קודם (FOT) ל-OAuth 2.0 של Google. השינוי הזה מאפשר למפתחים להשתמש בספריות סטנדרטיות של אימות Google, וכך לפשט את ההטמעה ולספק למשתמשים ממשק מוכר ומרכזי לניהול ההרשאות שלהם.
רישום אפליקציה
כל האפליקציות של Google Health API צריכות להיות רשומות באמצעות Google Cloud Console, שמשמש כמרכז מרכזי לניהול כל האפליקציות של Google.
הוראות לרישום האפליקציה מפורטות במאמר תחילת העבודה. אלה ההבדלים שתבחינו בהם כשאתם רושמים את האפליקציות:
| Fitbit Web API | Google Health API | |
| קישורים שגלויים לכולם | https://dev.fitbit.com/apps | https://console.cloud.google.com |
| הוספת אפליקציה חדשה | לוחצים על Register a new app (רישום אפליקציה חדשה). |
|
| פרטים בסיסיים | השדות שצריך למלא:
|
השדות שצריך למלא:
|
| סוגי אפליקציות | המפתח צריך לבחור:
|
|
| Client-ID | הרישום מתבצע כששומרים את הגדרות האפליקציה | נרשם בנפרד |
| סוג הגישה | גישת קריאה וכתיבה נשלטת ברמת האפליקציה | גישת קריאה וכתיבה נשלטת ברמת ההיקף |
| כתובות URL נוספות |
|
|
הטמעה של OAuth
אפליקציות של Google Health API תומכות רק בספריות הלקוח של Google OAuth2. יש ספריות לקוח למסגרות פופולריות, ולכן קל יותר להטמיע OAuth 2.0. ההבדלים בין ספריות Google OAuth2 לבין ספריות OAuth2 בקוד פתוח הם:
| Fitbit Web API | Google Health API | |
| תמיכה בספריית OAuth2 | קוד פתוח | ספריות לקוח של Google OAuth2 |
| פונקציונליות | חוסר עקביות בין הפלטפורמות | עקביות בפלטפורמות שונות |
| כתובת URL של הרשאה | https://www.fitbit.com/oauth2/authorize | https://accounts.google.com/o/oauth2/v2/auth |
| כתובת URL לטוקן | https://api.fitbit.com/oauth2/token | https://oauth2.googleapis.com/token |
| משך החיים של טוקן גישה | 8 שעות | שעה אחת |
| גודל טוקן הגישה | 1,024 בייטים | 2,048 בייטים |
| רענון הטוקן | טוקנים לרענון נוצרים כשמשתמשים בתהליך הענקת קוד הרשאה. אפשר ליצור רק טוקן רענון אחד למשתמש. הטוקנים אף פעם לא פוקעים ואפשר להשתמש בהם רק פעם אחת. | כדי ליצור טוקן רענון, מחרוזת ההרשאה צריכה לכלול את פרמטר השאילתה access_type=offline. אפשר ליצור כמה טוקנים רענון למשתמש יחיד. טוקנים רענון יכולים להיות מבוססים על זמן. הם יפוגו אם לא נעשה בהם שימוש במשך 6 חודשים, אם המשתמש העניק גישה מבוססת-זמן או אם האפליקציה במצב 'בדיקה'. פרטים נוספים זמינים במאמר בנושא תפוגה של טוקן רענון. |
| תגובת טוקן | תגובת ה-JSON מכילה:
|
תגובת ה-JSON מכילה:
כדי לקבל את מזהה המשתמש, משתמשים בנקודת הקצה users.getIdentity. |
אימות מחדש של משתמשים (קבלת הסכמה מחדש)
משתמשי Fitbit צריכים להביע הסכמה מחדש לשילוב החדש, כי האפליקציה שלך משתמשת בספריית OAuth אחרת. אי אפשר להעביר טוקנים של גישה וטוקנים של רענון אל Google Health API ולהשתמש בהם.