מבוא
Places API תומך בחיפוש בסביבה (דור קודם). אם אתם מכירים את "חיפוש בסביבה (הגרסה הקודמת)", בחיפוש בסביבה (חדש) יש את השינויים הבאים:
- בגרסה החדשה של "חיפוש בסביבה" נעשה שימוש בבקשות HTTP POST. מעבירים פרמטרים בגוף הבקשה או בכותרות כחלק מבקשת HTTP POST. לעומת זאת, בגרסה הקודמת של "חיפוש בסביבה", אתם מעבירים פרמטרים של כתובות URL באמצעות בקשת HTTP GET.
- חובה לבצע אנונימיזציה של השדה. צריך לציין אילו שדות רוצים לקבל בתשובה. אין רשימת ברירת מחדל של שדות שמוחזרים. אם לא תציינו את הרשימה הזו, השיטות יחזירו שגיאה. מידע נוסף זמין במאמר FieldMask.
- הגרסה החדשה של חיפוש בסביבה תומכת גם במפתחות API וגם באסימוני OAuth כמנגנון האימות.
- בגרסה החדשה של "חיפוש בסביבה", רק JSON נתמך כפורמט תגובה.
- כל הבקשות שכוללות שאילתת טקסט צריכות להשתמש עכשיו בחיפוש טקסט (חדש), כי חיפוש בסביבה (חדש) לא תומך בקלט טקסט.
- פורמט התגובה ב-JSON של "חיפוש בסביבה (חדש)" השתנה בהשוואה לפורמט של ממשקי ה-API הקודמים. פרטים נוספים זמינים במאמר העברת התגובה של Places API.
בטבלה הבאה מפורטים הפרמטרים של "חיפוש בסביבה (הגרסה הקודמת)" ששינינו את השם או את ההגדרה שלהם ב"חיפוש בסביבה (חדש)", או פרמטרים שכבר לא נתמכים.
| הפרמטר הנוכחי | פרמטר חדש | הערות |
|---|---|---|
keyword |
אין תמיכה במקום זאת, אתם צריכים להשתמש ב-חיפוש טקסט (חדש). | |
language |
languageCode |
|
location |
locationRestriction |
חובה. |
maxprice/minprice |
|
אין תמיכה |
maxResultCount |
פרמטר חדש. | |
opennow |
|
אין תמיכה |
pagetoken |
אין תמיכה | |
radius |
|
לשימוש ב-locationRestriction עכשיו. |
rankby |
rankPreference |
|
regionCode |
פרמטר חדש. | |
type |
includedTypesexcludedTypesincludedPrimaryTypesexcludedPrimaryTypes
|
הפרמטרים החדשים מקבלים גם ערכים מסוגים שונים. ה-API הקודם מקבל רק ערך אחד. |
דוגמה לבקשה
בקשת ה-GET לדוגמה הבאה משתמשת בחיפוש בסביבה (דור קודם). בדוגמה הזו, אתם מבקשים תגובת JSON שמכילה מידע על מקומות מסוג restaurant ומעבירים את כל הפרמטרים כפרמטרים של כתובת URL:
curl -L -X GET \ 'https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=37.7937%2C-122.3965&radius=500&type=restaurant&key=API_KEY'
בגרסה החדשה של "חיפוש בסביבה", שולחים בקשת POST ומעבירים את כל הפרמטרים בגוף הבקשה בפורמט JSON או בכותרות כחלק מבקשת ה-POST. בדוגמה הזו נעשה שימוש גם במסכת שדה, כך שהתשובה כוללת רק את השם המוצג ואת הכתובת בפורמט של המקום:
curl -X POST -d '{
"includedTypes": ["restaurant"],
"locationRestriction": {
"circle": {
"center": {
"latitude": 37.7937,
"longitude": -122.3965},
"radius": 500.0
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.formattedAddress" \
https://places.googleapis.com/v1/places:searchNearby