ee.data.authenticateViaOauth

הגדרת אימות בצד הלקוח של קריאות ל-EE API דרך ספריית הלקוח של Google APIs ל-JavaScript. הספרייה תיטען באופן אוטומטי אם היא עדיין לא נטענה בדף. אם המשתמש לא העניק לאפליקציה שזוהתה על ידי clientId גישה לנתוני ה-EE שלו בעבר, הוא יתבקש לעשות זאת.

צריך להפעיל את שיטת האימות הזו או שיטת אימות אחרת לפני ee.initialize().

שימו לב: אם המשתמש לא העניק בעבר גישה לאפליקציה שמזוהה על ידי מזהה הלקוח, כברירת מחדל המערכת תנסה להציג חלון דו-שיח שבו המשתמש מתבקש להעניק את ההרשאה הנדרשת. עם זאת, הדפדפן יכול לחסום את החלון הקופץ הזה. כדי למנוע את הבעיה הזו, צריך לציין את פונקציית הקריאה החוזרת opt_onImmediateFailed, ובתוכה להציג לחצן כניסה בדף, ואז לקרוא לפונקציה ee.data.authenticateViaPopup() מתוך handler של אירוע הלחיצה על הלחצן הזה. כך הדפדפן לא יחסום את החלון הקופץ, כי הוא נובע ישירות מפעולה של המשתמש.

אם אפשר, טוקן האימות יתעדכן אוטומטית. אפשר להניח בבטחה שכל השיחות האסינכרוניות יישלחו עם האישורים המתאימים. עם זאת, עבור קריאות סינכרוניות, צריך לבדוק אם יש אסימון אימות באמצעות ee.data.getAuthToken() ולקרוא ל-ee.data.refreshAuthToken() באופן ידני אם אין אסימון. פעולת רענון האסימון היא אסינכרונית, ואי אפשר לבצע אותה ברקע לפי דרישה לפני קריאות סינכרוניות.

שימושהחזרות
ee.data.authenticateViaOauth(clientId, success, error, extraScopes, onImmediateFailed, suppressDefaultScopes)
ארגומנטסוגפרטים
clientIdמחרוזתמזהה הלקוח של OAuth של האפליקציה, או null כדי להשבית שיחות מאומתות. אפשר לקבל את המזהה דרך Google Developers Console. לפרויקט צריך להיות מקור JavaScript שמתאים לדומיין שבו הסקריפט פועל.
successפונקציההפונקציה שמופעלת אם האימות הצליח.
errorפונקציה, אופציונליהפונקציה שמופעלת אם האימות נכשל, והודעת השגיאה מועברת אליה. אם האימות במצב מיידי (מאחורי הקלעים) נכשל והפרמטר opt_onImmediateFailed צוין, הפונקציה הזו נקראת במקום opt_error.
extraScopesרשימה[מחרוזת], אופציונליהיקפי הרשאות נוספים של OAuth לבקשה.
onImmediateFailedפונקציה, אופציונליהפונקציה שמופעלת אם האימות האוטומטי ברקע נכשל. ברירת המחדל היא ee.data.authenticateViaPopup(), שמוגדרת לשיחות החוזרות שהועברו.
suppressDefaultScopesבוליאני, אופציונליאם הערך הוא true, נשלחת בקשה רק להיקפים שצוינו ב-opt_extraScopes. ההיקפים שמוגדרים כברירת מחדל לא נכללים בבקשה, אלא אם הם צוינו במפורש ב-opt_extraScopes.