במאמר הזה נתאר את השיטות ואת המאפיינים של לקוח JavaScript שבהם תשתמשו כדי להטמיע את כניסה באמצעות חשבון Google באפליקציות האינטרנט שלכם.
אם תיתקלו בבעיות בשימוש בספרייה, דווחו על כך במאגר שלנו ב-GitHub.
הגדרת האימות
טוענים את ספריית הפלטפורמה של Google APIs כדי ליצור את האובייקט gapi
:
<script src="https://apis.google.com/js/platform.js?onload=init" async defer></script>
אחרי שספריית הפלטפורמה תיטען, צריך לטעון את ספריית auth2
:
function init() {
gapi.load('auth2', function() {
/* Ready. Make a call to gapi.auth2.init or some other API */
});
}
gapi.auth2.init(params)
מפעיל את האובייקט GoogleAuth
. עליך לקרוא לשיטה הזו לפני קריאה לשיטות של gapi.auth2.GoogleAuth
.
כשמאתחלים את האובייקט GoogleAuth
, מגדירים את האובייקט עם מזהה הלקוח ב-OAuth 2.0 ועם כל אפשרות נוספת שרוצים לציין. לאחר מכן, אם המשתמש כבר נכנס, האובייקט GoogleAuth
ישחזר את מצב הכניסה של המשתמש מהסשן הקודם.
ארגומנטים | |
---|---|
params |
אובייקט שמכיל צמדי מפתח/ערך של נתוני תצורת לקוח. אפשר לעיין במאמר
gapi.auth2.ClientConfig כדי לראות מהם המאפיינים
השונים שאפשר להגדיר. לדוגמה:
{ client_id: 'CLIENT_ID.apps.googleusercontent.com' } |
החזרות | |
---|---|
gapi.auth2.GoogleAuth |
האובייקט gapi.auth2.GoogleAuth . משתמשים בשיטה then() כדי לקבל Promise שנפתרת לאחר סיום האתחול של האובייקט gapi.auth2.GoogleAuth .
|
GoogleAuth.then(onInit, onError)
קורא לפונקציה onInit כשהאובייקט GoogleAuth
מאותחל במלואו. אם מופיעה שגיאה במהלך האתחול (זה יכול לקרות בדפדפנים ישנים שלא נתמכים), תתבצע קריאה לפונקציה onError.
ארגומנטים | |
---|---|
onInit |
הפונקציה שנקראה עם האובייקט GoogleAuth כאשר היא
מאותחלת באופן מלא.
|
onError |
הפונקציה שנקראה עם אובייקט שמכיל את המאפיין error ,
אם האתחול של GoogleAuth נכשל.
|
החזרות | |
---|---|
התחייבות | Promise שמתקיים כשהפונקציה onInit הושלמה או נדחית במקרה של שגיאת אתחול. היא מקבלת את הערך שהוחזר מהפונקציה onInit, אם יש כזו. |
קודי שגיאות
idpiframe_initialization_failed
-
ההפעלה של iframe נדרש מ-Google נכשלה, למשל בגלל סביבה
לא נתמכת. נכס
details
יספק מידע נוסף לגבי השגיאה שהועלתה.
gapi.auth2.ClientConfig
ממשק שמייצג את הפרמטרים השונים של ההגדרה לשיטה gapi.auth2.init
.
פרמטרים | ||
---|---|---|
client_id |
string |
חובה. מזהה הלקוח של האפליקציה, שנמצא ונוצר ב-Google Developers Console. |
cookie_policy |
string |
הדומיינים שעבורם יש ליצור קובצי cookie לכניסה. URI,
single_host_origin או none . אם לא צוין ערך, ברירת המחדל היא
single_host_origin . |
scope |
string |
ההיקפים שיש לבקש, כמחרוזת מופרדת ברווחים. אופציונלי אם
fetch_basic_profile לא מוגדר כ-False. |
fetch_basic_profile |
boolean |
שלוף פרטי פרופיל בסיסיים של משתמשים כאשר הם מתחברים. מוסיף 'profile', 'email' ו-'openid' להיקפים המבוקשים. True אם לא צוין. |
hosted_domain |
string |
הדומיין ב-G Suite שהמשתמשים צריכים להיכנס אליו. לקוחות
רגישים לשינויים על ידי לקוחות, לכן חשוב לאמת את
נכס הדומיין המתארח של המשתמש המוחזר. משתמשים
ב-GoogleUser.getHostedDomain()
בלקוח, ובהצהרת hd באסימון המזהה
בשרת כדי לוודא שהדומיין אכן תואם למה שציפיתם.
|
ux_mode |
string |
מצב ה-UX שבו צריך להשתמש בתהליך הכניסה. כברירת מחדל, תהליך ההסכמה ייפתח
בחלון קופץ. הערכים החוקיים הם popup ו-redirect . |
redirect_uri |
string |
אם משתמשים ב-ux_mode='redirect' , הפרמטר הזה מאפשר לשנות את
ערך ברירת המחדל redirect_uri שיהיה בשימוש בסוף תהליך ההסכמה. ברירת המחדל
redirect_uri היא כתובת ה-URL הנוכחית, ללא פרמטרים של שאילתה ומקטע גיבוב (hash).
|
plugin_name |
string |
זה שינוי אופציונלי. אם הערך הזה מוגדר, מזהי לקוח חדשים שייווצרו לפני 29 ביולי 2022 יוכלו להשתמש בגרסה הישנה יותר של ספריית הפלטפורמה של Google.
כברירת מחדל, מעכשיו אין אפשרות להשתמש במזהי לקוח חדשים שנוצרים
בספריית הפלטפורמה, ובמקום זאת הם צריכים להשתמש בספרייה החדשה יותר של Google Identity Services. אפשר לבחור כל ערך. מומלץ להשתמש בשם תיאורי כמו
שם המוצר או הפלאגין כדי לזהות אותו בקלות.
דוגמה: plugin_name: 'YOUR_STRING_HERE'
|
אימות
GoogleAuth
היא מחלקה מסוג singleton שמספקת שיטות שמאפשרות למשתמש להיכנס עם חשבון Google, לקבל את סטטוס הכניסה הנוכחי של המשתמש, לקבל נתונים ספציפיים מפרופיל Google של המשתמש, לבקש היקפים נוספים ולצאת מהחשבון הנוכחי.
gapi.auth2.getAuthInstance()
מחזירה את האובייקט GoogleAuth
. לפני הקריאה לשיטה הזו, צריך לאתחל את האובייקט GoogleAuth
עם gapi.auth2.init()
.
החזרות | |
---|---|
gapi.auth2.GoogleAuth |
האובייקט gapi.auth2.GoogleAuth . משתמשים באובייקט הזה כדי לקרוא
ל-methods של gapi.auth2.GoogleAuth .
|
GoogleAuth.isSignedIn.get()
מחזירה אם המשתמש הנוכחי מחובר.
החזרות | |
---|---|
ערך בוליאני |
true אם המשתמש מחובר, או false אם
המשתמש יוצא מהחשבון או שהאובייקט GoogleAuth לא
מאותחל.
|
GoogleAuth.isSignedIn.listen(listener)
האזנה לשינויים במצב הכניסה של המשתמש הנוכחי.
ארגומנטים | |
---|---|
listener |
פונקציה שמקבלת ערך בוליאני. listen() מעביר את
true לפונקציה הזו כשהמשתמש נכנס, ו-false כשהמשתמש יוצא.
|
GoogleAuth.signIn()
הכניסה של המשתמש באמצעות האפשרויות שצוינו ל-gapi.auth2.init()
.
החזרות | |
---|---|
התחייבות | Promise שמולא באמצעות המופע של GoogleUser כשהמשתמש מאמת ומעניק את ההיקפים המבוקשים, או נדחה עם אובייקט שמכיל את המאפיין error במקרה שאירעה שגיאה (קודי השגיאה מופיעים בהמשך). |
קודי שגיאה
GoogleAuth.signIn(options)
כניסה של המשתמש באמצעות האפשרויות שצוינו.
ארגומנטים | |
---|---|
options |
אחת משתי האפשרויות:
|
החזרות | |
---|---|
התחייבות | Promise שמולא באמצעות המופע של GoogleUser כשהמשתמש מאמת ומעניק את ההיקפים המבוקשים, או נדחה עם אובייקט שמכיל את המאפיין error במקרה שאירעה שגיאה (קודי השגיאה מופיעים בהמשך). |
קודי שגיאה
popup_closed_by_user
- המשתמש סגר את החלון הקופץ לפני שסיים את תהליך הכניסה.
access_denied
- המשתמש דחה את ההרשאה להיקפי ההרשאות הנדרשים.
immediate_failed
-
לא ניתן היה לבחור משתמש באופן אוטומטי בלי לבקש את תהליך ההסכמה. אירעה שגיאה במהלך השימוש ב-
signIn
עם האפשרותprompt: 'none'
. אין צורך באפשרות הזו כדי להשתמש באפשרות הזו, כי המשתמשgapi.auth2.init
ייכנס אוטומטית אם הוא נכנס בעבר בסשן קודם.
gapi.auth2.SignInOptions
ממשק שמייצג את הפרמטרים השונים של ההגדרות ל-method GoogleAuth.signIn(options)
.
פרמטרים | ||
---|---|---|
prompt |
string |
אילוץ מצב ספציפי עבור זרימת ההסכמה. זה שינוי אופציונלי. הערכים האפשריים הם:
|
scope |
string |
ההיקפים שיש לבקש, כמחרוזת מופרדת ברווחים, מעל להיקפי ההרשאות שהוגדרו בפרמטרים gapi.auth2.init . אופציונלי אם הערך של fetch_basic_profile לא מוגדר כ-False.
|
ux_mode |
string |
מצב ה-UX שבו צריך להשתמש בתהליך הכניסה. כברירת מחדל, תהליך ההסכמה ייפתח
בחלון קופץ. הערכים החוקיים הם popup ו-redirect . |
redirect_uri |
string |
אם משתמשים ב-ux_mode='redirect' , הפרמטר הזה מאפשר לשנות את
ערך ברירת המחדל redirect_uri שיהיה בשימוש בסוף תהליך ההסכמה. ברירת המחדל redirect_uri היא כתובת ה-URL הנוכחית, ללא פרמטרים של שאילתה ומקטע hash.
|
GoogleAuth.signOut()
מוציא את החשבון הנוכחי מהאפליקציה.
החזרות | |
---|---|
התחייבות | Promise שמתקיים כשהמשתמש יוצא מהחשבון. |
GoogleAuth.disconnect()
ביטול כל ההיקפים שהמשתמש העניק.
GoogleAuth.grantאופלייןAccess(options)
קבלת הרשאה מהמשתמש לגשת אופליין להיקפי ההרשאות שצוינו.
ארגומנטים | |
---|---|
options |
אובייקט gapi.auth2.OfflineAccessOptions שמכיל צמדי מפתח/ערך של פרמטרים. למשל: { scope: 'profile email' } |
החזרות | |
---|---|
התחייבות | Promise שמולא כשהמשתמש מעניק את ההיקפים המבוקשים ומעביר אובייקט שמכיל את קוד ההרשאה ל-handler של מילוי הבקשה של Promise .
למשל: auth2.grantOfflineAccess().then(function(resp) { var auth_code = resp.code; }); |
קודי שגיאה
popup_closed_by_user
- המשתמש סגר את החלון הקופץ לפני שסיים את תהליך ההסכמה.
access_denied
- המשתמש דחה את ההרשאה להיקפי ההרשאות הנדרשים.
immediate_failed
-
לא ניתן היה לבחור משתמש באופן אוטומטי בלי לבקש את תהליך ההסכמה. אירעה שגיאה במהלך השימוש ב-
signIn
עם האפשרותprompt: 'none'
. אין צורך באפשרות הזו כדי להשתמש באפשרות הזו, כי המשתמשgapi.auth2.init
ייכנס אוטומטית אם הוא נכנס בעבר בסשן קודם.
gapi.auth2.OfflineAccessOptions
ממשק שמייצג את הפרמטרים השונים של ההגדרות ל-method GoogleAuth.grantOfflineAccess(options)
.
פרמטרים | ||
---|---|---|
prompt |
string |
אילוץ מצב ספציפי עבור זרימת ההסכמה. זה שינוי אופציונלי. הערכים האפשריים הם:
|
scope |
string |
ההיקפים שיש לבקש, כמחרוזת מופרדת ברווחים, מעל להיקפי ההרשאות שהוגדרו בפרמטרים gapi.auth2.init . אופציונלי אם הערך של fetch_basic_profile לא מוגדר כ-False.
|
GoogleAuth.attachClickHandler(container, options, onsuccess, onfailure)
צירוף של תהליך הכניסה ל-handler של הקליקים של מאגר התגים שצוין.
ארגומנטים | |
---|---|
container | המזהה של הרכיב div , או ההפניה אליו, שאליו
לצרף את ה-handler של הקליקים. |
options | אובייקט שמכיל צמדי מפתח/ערך של פרמטרים. למידע נוסף, ראו GoogleAuth.signIn(). |
onsuccess | הפונקציה לקריאה לאחר השלמת הכניסה. |
onfailure | הפונקציה לקריאה אם הכניסה נכשלת. |
משתמשים
אובייקט GoogleUser
מייצג חשבון משתמש אחד.
בדרך כלל אפשר להשיג אובייקטים מסוג GoogleUser
על ידי קריאה ל-GoogleAuth.currentUser.get().
GoogleAuth.currentUser.get()
מחזירה אובייקט GoogleUser
שמייצג את המשתמש הנוכחי. הערה: במכונה GoogleAuth
שאותחלה לאחרונה, המשתמש הנוכחי לא הוגדר. משתמשים בשיטה currentUser.listen()
או ב-GoogleAuth.then()
כדי לקבל מכונה של GoogleAuth
מאותחלת.
החזרות | |
---|---|
GoogleUser |
המשתמש הנוכחי |
GoogleAuth.currentUser.listen(listener)
האזנה לשינויים במשתמש הנוכחי.
ארגומנטים | |
---|---|
listener |
פונקציה שמקבלת פרמטר GoogleUser .
הפונקציה listen מעבירה את הפונקציה הזו כמופע של GoogleUser
בכל שינוי שמשנה את הערך currentUser .
|
GoogleUser.getId()
מוצאים את מחרוזת המזהה הייחודי של המשתמש.
החזרות | |
---|---|
מחרוזת | המזהה הייחודי של המשתמש |
GoogleUser.isSignedIn()
הפונקציה מחזירה את הערך True אם המשתמש מחובר.
החזרות | |
---|---|
ערך בוליאני | True אם המשתמש מחובר |
GoogleUser.getHostedDomain()
אפשר לקבל את הדומיין ב-G Suite של המשתמש אם המשתמש נכנס עם חשבון G Suite.
החזרות | |
---|---|
מחרוזת | הדומיין של המשתמש ב-G Suite |
GoogleUser.getGrantedScopes()
צריך לקבל את היקפי ההרשאות שהמשתמש העניק כמחרוזת מופרדת ברווחים.
החזרות | |
---|---|
מחרוזת | היקפי ההרשאות שניתנו על ידי המשתמש |
GoogleUser.getBasicProfile()
קבלת פרטי הפרופיל הבסיסיים של המשתמש.
החזרות | |
---|---|
gapi.auth2.BasicProfile |
אפשר לאחזר את המאפיינים של gapi.auth2.BasicProfile
באמצעות השיטות הבאות:
|
GoogleUser.getAuthResponse(includeAuthorizationData)
צריך לקבל את אובייקט התגובה מסשן האימות של המשתמש.
ארגומנטים | |
---|---|
includeAuthorizationData | אופציונלי: ערך בוליאני שמציין אם להחזיר תמיד אסימון גישה והיקפים. כברירת מחדל, אסימון הגישה וההיקפים המבוקשים לא מוחזרים כאשר fetch_basic_profile הוא True (ערך ברירת המחדל) ולא מבקשים היקפים נוספים. |
החזרות | |
---|---|
gapi.auth2.AuthResponse |
אובייקט gapi.auth2.AuthResponse . |
GoogleUser.reloadAuthResponse()
מאלצת רענון של אסימון הגישה, ולאחר מכן מחזירה הבטחה ל-AuthResponse החדשה.
החזרות | |
---|---|
Promise |
Promise שמולא עם gapi.auth2.AuthResponse שנטען מחדש
במהלך הטעינה מחדש של אסימון ה-OAuth.
|
gapi.auth2.AuthResponse
התשובה הוחזרה לאחר הפעלת השיטות
GoogleUser.getAuthResponse(includeAuthorizationData)
או
GoogleUser.reloadAuthResponse()
.
תכונות | ||
---|---|---|
access_token |
string |
אסימון הגישה הוענק. |
id_token |
string |
אסימון המזהה שניתן. |
scope |
string |
היקפי ההרשאות שניתנו באסימון הגישה. |
expires_in |
number |
מספר השניות עד שתוקף אסימון הגישה יפוג. |
first_issued_at |
number |
חותמת הזמן שבה המשתמש נתן לראשונה את ההיקפים המבוקשים. |
expires_at |
number |
חותמת הזמן שבה יפוג תוקף אסימון הגישה. |
GoogleUser.hasGrantedScopes(scopes)
הפונקציה מחזירה את הערך True אם המשתמש העניק את ההיקפים שצוינו.
ארגומנטים | |
---|---|
scopes | מחרוזת היקפים מופרדת ברווחים. |
החזרות | |
---|---|
ערך בוליאני | True אם ההיקפים הוענקו |
GoogleUser.grant(options)
לבקש היקפים נוספים למשתמש.
לרשימת הפרמטרים ולקוד השגיאה, ראו GoogleAuth.signIn()
.
GoogleUser.grantאופלייןAccess(options)
קבלת הרשאה מהמשתמש לגשת אופליין להיקפי ההרשאות שצוינו.
ארגומנטים | |
---|---|
options |
אובייקט gapi.auth2.OfflineAccessOptions שמכיל צמדי מפתח/ערך של פרמטרים. למשל: { scope: 'profile email' } |
GoogleUser.disconnect()
ביטול כל היקפי ההרשאות שהמשתמש העניק לאפליקציה.
רכיבים בממשק המשתמש
gapi.signin2.render(id, options)
זהו לחצן כניסה ברכיב עם המזהה הנתון, בהתאם להגדרות שנקבעו על ידי האובייקט options.
ארגומנטים | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id | מזהה הרכיב שבו יש לעבד את לחצן הכניסה. | ||||||||||||||||
options |
אובייקט שמכיל את ההגדרות שישמשו לעיבוד הלחצן. לדוגמה:
{ scope: 'email', width: 200, height: 50, longtitle: true, theme: 'dark', onsuccess: handleSuccess, onfailure: handleFailure }תוכלו לציין את האפשרויות הבאות:
|
מתקדמת
gapi.auth2.certification(params, callback)
מבצע הרשאת OAuth 2.0 חד-פעמית. בהתאם לפרמטרים שבהם נעשה שימוש, ייפתח חלון קופץ בתהליך הכניסה באמצעות חשבון Google, או ניסיון לטעון את התשובה המבוקשת בשקט, ללא אינטראקציה מצד המשתמש.
הנה כמה תרחישים לדוגמה שבהם השיטה הזו מועילה:
- האפליקציה שלכם צריכה לבקש נקודת קצה ל-Google API רק פעם אחת, לדוגמה, כדי לטעון את סרטוני YouTube המועדפים על המשתמש בפעם הראשונה שהוא נכנס לחשבון.
- לאפליקציה שלכם יש תשתית משלה לניהול סשנים, וצריך להשתמש באסימון המזהה רק פעם אחת כדי לזהות את המשתמש בקצה העורפי.
- באותו הדף נעשה שימוש בכמה מזהי לקוח.
ארגומנטים | |
---|---|
params |
אובייקט שמכיל צמדי מפתח/ערך של נתוני תצורה. אפשר לעיין במאמר
gapi.auth2.AuthorizeConfig כדי לראות מהם המאפיינים השונים שניתן להגדיר. לדוגמה:
{ client_id: 'CLIENT_ID.apps.googleusercontent.com', scope: 'email profile openid', response_type: 'id_token permission' } |
callback |
פונקציה שנקראה עם אובייקט gapi.auth2.AuthorizeResponse אחרי שהבקשה הושלמה (בהצלחה או בכשל).
|
דוגמה
gapi.auth2.authorize({
client_id: 'CLIENT_ID.apps.googleusercontent.com',
scope: 'email profile openid',
response_type: 'id_token permission'
}, function(response) {
if (response.error) {
// An error happened!
return;
}
// The user authorized the application for the scopes requested.
var accessToken = response.access_token;
var idToken = response.id_token;
// You can also now use gapi.client to perform authenticated requests.
});
קודי שגיאה
idpiframe_initialization_failed
-
ההפעלה של iframe נדרש מ-Google נכשלה, למשל בגלל סביבה
לא נתמכת. נכס
details
יספק מידע נוסף לגבי השגיאה שהועלתה. popup_closed_by_user
- המשתמש סגר את החלון הקופץ לפני שסיים את תהליך הכניסה.
access_denied
- המשתמש דחה את ההרשאה להיקפי ההרשאות הנדרשים.
immediate_failed
-
לא ניתן היה לבחור משתמש באופן אוטומטי בלי לבקש את תהליך ההסכמה. אירעה שגיאה במהלך השימוש ב-
signIn
עם האפשרותprompt: 'none'
.
gapi.auth2.AuthorizeConfig
ממשק שמייצג את הפרמטרים השונים של ההגדרות ל-method gapi.auth2.authorize
.
תכונות | ||
---|---|---|
client_id |
string |
נדרש. מזהה הלקוח של האפליקציה, שנמצא ונוצר ב-Google Developers Console. |
scope |
string |
נדרש. ההיקפים שיש לבקש, כמחרוזת מופרדת ברווחים. |
response_type |
string |
רשימה של סוגי תשובות שמופרדים ברווחים. ברירת המחדל היא 'permission' . הערכים האפשריים הם:
|
prompt |
string |
אילוץ מצב ספציפי עבור זרימת ההסכמה. הערכים האפשריים הם:
|
cookie_policy |
string |
הדומיינים שעבורם יש ליצור קובצי cookie לכניסה. URI,
single_host_origin או none . אם לא צוין ערך, ברירת המחדל היא
single_host_origin .
|
hosted_domain |
string |
הדומיין ב-G Suite שהמשתמשים צריכים להיכנס אליו. לקוחות יכולים לשנות את הדומיין הזה, לכן חשוב לאמת את נכס הדומיין המתארח של המשתמש המוחזר. |
login_hint |
string |
כתובת האימייל או ה-User-ID של המשתמש שעליו לבחור מראש בתהליך הכניסה. המשתמשים עשויים
לשנות את התנאים האלה, אלא אם נעשה שימוש ב-prompt: "none" .
|
include_granted_scopes |
boolean |
האם לבקש אסימון גישה שכולל את כל היקפי ההרשאות שהמשתמש נתן לאפליקציה בעבר, או רק את ההיקפים שהתבקשו בשיחה הנוכחית. ברירת המחדל היא true .
|
plugin_name |
string |
זה שינוי אופציונלי. אם המדיניות מוגדרת, מזהי לקוח שנוצרו לפני 29 ביולי 2022 יכולים להשתמש
בספריית הפלטפורמה של Google. כברירת מחדל, אנחנו חוסמים מזהי לקוח חדשים בשימוש בספריית הפלטפורמה. במקום זאת, צריך להשתמש בספרייה החדשה יותר של Google Identity Services. אפשר לבחור כל ערך. כדי להקל על הזיהוי, מומלץ להשתמש בשם תיאורי
כמו שם המוצר או הפלאגין.
דוגמה: plugin_name: 'YOUR_STRING_HERE'
|
gapi.auth2.AuthorizeResponse
התשובה שהוחזרה לקריאה החוזרת של השיטה gapi.auth2.authorize
.
תכונות | ||
---|---|---|
access_token |
string |
אסימון הגישה הוענק. מוצג רק אם permission או token צוינו ב-response_type .
|
id_token |
string |
אסימון המזהה שניתן. מוצג רק אם צוין id_token ב-response_type .
|
code |
string |
קוד ההרשאה שניתן. מוצג רק אם צוין code ב-response_type .
|
scope |
string |
היקפי ההרשאות שניתנו באסימון הגישה. מוצג רק אם permission או
token צוינו ב-response_type .
|
expires_in |
number |
מספר השניות עד שתוקף אסימון הגישה יפוג. מוצג רק אם permission או token צוינו ב-response_type .
|
first_issued_at |
number |
חותמת הזמן שבה המשתמש נתן לראשונה את ההיקפים המבוקשים. מוצג רק אם
permission או token צוינו ב-response_type .
|
expires_at |
number |
חותמת הזמן שבה יפוג תוקף אסימון הגישה. מוצג רק אם permission או token צוינו ב-response_type .
|
error |
string |
כשהבקשה נכשלה, מופיע קוד השגיאה. |
error_subtype |
string |
כשהבקשה נכשלה, יכול להיות שיופיע מידע נוסף על קוד השגיאה שהוחזר. |