Places API (הגרסה החדשה) תומך בשימוש ב-OAuth 2.0 לצורך אימות. Google תומכת בתרחישים נפוצים של OAuth 2.0, כמו תרחישים של שרת אינטרנט.
במסמך הזה נסביר איך להעביר אסימון OAuth לקריאה של Places API (חדש) בסביבת הפיתוח. להוראות לשימוש ב-OAuth בסביבת ייצור, אפשר לעיין במאמר אימות ב-Google.
לפני שמתחילים
לפני שמתחילים להשתמש ב-Places API (חדש), צריך פרויקט עם חשבון לחיוב ו-Places API (חדש) מופעל. מומלץ ליצור כמה בעלי פרויקטים ואדמינים לענייני חיוב, כדי שתמיד יהיה מישהו עם התפקידים האלה שזמין לצוות. מידע נוסף זמין במאמר הגדרה במסוף Cloud.
מידע על OAuth
יש הרבה דרכים ליצור ולנהל אסימוני גישה באמצעות OAuth בהתאם לסביבת הפריסה שלכם.
לדוגמה, מערכת OAuth 2.0 של Google תומכת באינטראקציות בין שרתים, כמו אינטראקציות בין האפליקציה לבין שירות של Google. בתרחיש הזה צריך חשבון שירות, שהוא חשבון ששייך לאפליקציה ולא למשתמש קצה ספציפי. האפליקציה שולחת קריאות ל-Google APIs מטעם חשבון השירות, כך שהמשתמשים לא מעורבים באופן ישיר. למידע נוסף על שיטות אימות, ראו אימות ב-Google.
לחלופין, אפשר להשתמש ב-Places API (הגרסה החדשה) כחלק מאפליקציה לנייד ל-Android או ל-iOS. למידע כללי על השימוש ב-OAuth עם Places API (הגרסה החדשה), כולל מידע על ניהול אסימוני גישה לסביבות פריסה שונות, תוכלו לעיין במאמר שימוש ב-OAuth 2.0 לגישה ל-Google APIs.
מידע על היקפי ההרשאות של OAuth
כדי להשתמש ב-OAuth עם Places API (חדש), צריך להקצות לאסימון ה-OAuth את ההיקף:
https://www.googleapis.com/auth/cloud-platform
דוגמה: ניסיון קריאות ל-API ל-REST בסביבת הפיתוח המקומית
אם ברצונך לנסות את Places API (חדש) באמצעות אסימון OAuth, אבל אין לך סביבה כדי ליצור אסימונים, תוכלו לבצע את התהליך שבקטע הזה כדי לבצע את הקריאה.
דוגמה זו מתארת כיצד להשתמש באסימון OAuth שסופק על ידי Application Default Credentials (ADC) כדי להתקשר. במאמר אימות באמצעות ספריות לקוח תוכלו ללמוד איך משתמשים ב-ADC כדי לקרוא ל-Google APIs באמצעות ספריות לקוח.
דרישות מוקדמות
כדי שתוכלו לשלוח בקשת REST באמצעות ADC, אתם צריכים להשתמש ב-CLI של Google Cloud כדי לספק ל-ADC את פרטי הכניסה:
- אם עדיין לא עשית זאת, עליך ליצור פרויקט ולהפעיל את החיוב על ידי ביצוע השלבים הבאים: ההגדרה מתבצעת במסוף Google Cloud.
- מתקינים ומפעילים את ה-CLI של gcloud.
מריצים את הפקודה הבאה של
gcloud
במחשב המקומי כדי ליצור קובץ פרטי הכניסה:gcloud auth application-default login
- מסך התחברות יוצג לפניכם. אחרי ההתחברות, פרטי הכניסה נשמרים קובץ פרטי הכניסה המקומי שמשמש את ADC.
מידע נוסף זמין במאמר הבא: סביבת פיתוח מקומית בקטע של הוספת פרטי כניסה ל-Application Default Credentials התיעוד.
שליחת בקשת REST
בדוגמה הזו, מעבירים שתי כותרות בקשה:
מעבירים את אסימון ה-OAuth בכותרת
Authorization
באמצעות הפקודה הבאה כדי ליצור את האסימון:gcloud auth application-default print-access-token
היקף הטוקן המוחזר הוא
https://www.googleapis.com/auth/cloud-platform.
- מעבירים את המזהה או השם של הפרויקט ב-Google Cloud שבו החיוב מופעל בכותרת
X-Goog-User-Project
. מידע נוסף זמין במאמר הגדרה במסוף Cloud.
בדוגמה הבאה מתבצעת קריאה ל-Places API (חדש) באמצעות אסימון OAuth:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia" }' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "X-Goog-FieldMask: places.displayName,places.formattedAddress" \ "https://places.googleapis.com/v1/places:searchText"
פתרון בעיות
אם הבקשה מחזירה הודעת שגיאה שלפיה ה-API לא תומך בפרטי הכניסה של משתמשי הקצה, עיינו בקטע פרטי הכניסה של משתמשים לא פועלים.