העברה לחיפוש בקרבת מקום (חדש)

Places API תומך ב-Nearby Search הקיים. אם אתם מכירים את 'חיפוש בקרבת מקום' הקיים, הגרסה החדשה של 'חיפוש בקרבת מקום' מבצעת את השינויים הבאים:

  • התכונה החדשה 'חיפוש בקרבת מקום' משתמשת בבקשות HTTP POST. העברה של פרמטרים בגוף הבקשה או בכותרות כחלק מבקשת HTTP POST. לעומת זאת, בחיפוש בקרבת מקום הקיים, אתם מעבירים פרמטרים של כתובת URL באמצעות בקשת HTTP GET.
  • צריך לבצע אנונימיזציה של השדות. צריך לציין אילו שדות רוצים להחזיר בתשובה. אין רשימת ברירת מחדל של השדות שהוחזרו. אם משמיטים את הרשימה הזו, השיטות יחזירו שגיאה. מידע נוסף זמין במאמר FieldMask.
  • התכונה החדשה 'חיפוש בקרבת מקום' תומכת גם באסימוני מפתחות API וגם באסימונים של OAuth כמנגנון האימות.
  • בממשק החדש של 'חיפוש בקרבת מקום' יש תמיכה רק ב-JSON כפורמט תגובה.
  • בכל הבקשות שכוללות שאילתת טקסט צריך להשתמש עכשיו בחיפוש טקסט (חדש) כי התכונה 'חיפוש בקרבת מקום' (חדש) לא תומכת בקלט טקסט.
  • הפורמט של התגובה JSON ל-API של חיפוש בקרבת מקום (חדש) השתנה מהפורמט של ממשקי ה-API הקיימים. לפרטים נוספים קראו את המאמר העברת התגובה של Places API.

בטבלה הבאה מפורטים פרמטרים ב'חיפוש בקרבת מקום' הקיים, שהשמות שלהם השתנו או ששינו אותם לממשק החדש של 'חיפוש בקרבת מקום', או פרמטרים שלא נתמכים יותר.

הפרמטר הנוכחי פרמטר חדש הערות
keyword ההודעה לא נתמכת. במקום זאת, צריך להשתמש בחיפוש טקסט (חדש).
language languageCode
location locationRestriction חובה.
maxprice/minprice ההודעה לא נתמכת.
maxResultCount פרמטר חדש.
opennow ההודעה לא נתמכת.
pagetoken ההודעה לא נתמכת.
radius שימוש ב-locationRestriction עכשיו.
rankby rankPreference
regionCode פרמטר חדש.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
הפרמטרים החדשים מקבלים גם כמה ערכי סוגים. ה-API הקיים מקבל רק ערך אחד.

דוגמה לבקשה

בדוגמה הבאה בקשת GET משתמשת ב'חיפוש בקרבת מקום' הקיים. בדוגמה הזו, מבקשים תשובת JSON שמכילה מידע על מקומות מסוג restaurant ומעבירים את כל הפרמטרים כפרמטרים של כתובת אתר:

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