Places API (חדש) תומך בשימוש ב-OAuth 2.0 לאימות. Google תומכת בתרחישי OAuth 2.0 נפוצים, כמו תרחישים של שרת אינטרנט.
כאן מוסבר איך להעביר אסימון OAuth לקריאה ל-Places API (החדש) בסביבת הפיתוח. להוראות על שימוש ב-OAuth בסביבת ייצור, קראו את המאמר אימות ב-Google.
לפני שמתחילים
לפני שמתחילים להשתמש ב-Places API (חדש), צריך להיות לכם פרויקט עם חשבון לחיוב שבו מפעילים את Places API (New). מומלץ ליצור כמה 'בעלי הפרויקט' ו'אדמינים לענייני חיוב', כדי שתמיד יהיה מישהו עם התפקידים האלה שזמינים לצוות. מידע נוסף זמין במאמר הגדרה במסוף Cloud.
מידע על OAuth
יש הרבה דרכים ליצור ולנהל אסימוני גישה באמצעות OAuth, בהתאם לסביבת הפריסה שלכם.
לדוגמה, מערכת Google OAuth 2.0 תומכת באינטראקציות בין שרתים, כמו אינטראקציות בין האפליקציה לבין שירות של Google. בתרחיש הזה צריך חשבון שירות, שהוא חשבון ששייך לאפליקציה ולא למשתמש קצה יחיד. האפליקציה שולחת קריאה ל-Google APIs מטעם חשבון השירות, כך שהמשתמשים לא מעורבים באופן ישיר. מידע נוסף על שיטות אימות זמין במאמר אימות ב-Google.
לחלופין, ייתכן שתשתמש ב-Places API (חדש) כחלק מאפליקציה לנייד ב-Android או ב-iOS. למידע כללי על השימוש ב-OAuth עם Places API (חדש), כולל מידע על ניהול אסימוני גישה לסביבות פריסה שונות, קרא את המאמר שימוש ב-OAuth 2.0 לגישה ל-Google APIs.
מידע על היקפי הרשאות OAuth
כדי להשתמש ב-OAuth עם API של מקומות (חדש), יש להקצות את ההיקף לאסימון OAuth:
https://www.googleapis.com/auth/cloud-platform
דוגמה: ניסיון קריאות ל-API ל-REST בסביבת הפיתוח המקומית שלכם
אם אתם רוצים לנסות את Places API (חדש) באמצעות אסימון OAuth, אבל אין לכם הגדרת סביבה ליצירת אסימונים, תוכלו להשתמש בהליך שמתואר בקטע הזה כדי לבצע את הקריאה.
בדוגמה הזו מוסבר איך משתמשים באסימון OAuth שסופק על ידי Application Default Credentials (ADC) כדי לבצע את הקריאה. במאמר אימות באמצעות ספריות לקוח מוסבר איך משתמשים ב-ADC כדי לקרוא ל-Google APIs באמצעות ספריות לקוח.
דרישות מוקדמות
כדי שתוכלו לשלוח בקשת REST באמצעות ADC, השתמשו ב-Google Cloud CLI כדי לספק את פרטי הכניסה ל-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 לא תומך בפרטי הכניסה של משתמשי הקצה, עיינו בקטע פרטי הכניסה של משתמשים לא פועלים.