انتقال به «جستجوی اطراف» (جدید)

توسعه‌دهندگان منطقه اقتصادی اروپا (EEA)

مقدمه

‫Places API از جستجوی اطراف (قدیمی) پشتیبانی می‌کند. اگر با «جستجوی مکان‌های اطراف (قدیمی)» آشنا هستید، «جستجوی مکان‌های اطراف (جدید)» تغییرات زیر را ایجاد می‌کند:

  • «جستجوی اطراف» (جدید) از درخواست‌های HTTP POST استفاده می‌کند. پارامترها را در بدنه درخواست یا در سرایندها به‌عنوان بخشی از درخواست HTTP POST ارسال کنید. درمقابل، با «جستجوی اطراف» (قدیمی)، پارامترهای نشانی وب را بااستفاده از درخواست HTTP GET ارسال می‌کنید.
  • پوشش فیلد الزامی است. باید مشخص کنید کدام فیلدها را می‌خواهید در پاسخ برگردانده شود. فهرست پیش‌فرضی از فیلدهای برگشتی وجود ندارد. اگر این فهرست را حذف کنید، روش‌ها خطا برمی‌گردانند. برای اطلاعات بیشتر، به FieldMask مراجعه کنید.
  • «جستجوی اطراف» (جدید) از هر دو کلیدهای میانای برنامه‌سازی کاربردی و کدهای OAuth به‌عنوان سازوکار اصالت‌سنجی پشتیبانی می‌کند.
  • فقط JSON به‌عنوان قالب پاسخ در «جستجوی مکان‌های اطراف (جدید)» پشتیبانی می‌شود.
  • همه درخواست‌هایی که شامل پُرسمان نوشتاری هستند اکنون باید از جستجوی نوشتاری (جدید) استفاده کنند زیرا «جستجوی مکان‌های اطراف» (جدید) از ورودی نوشتاری پشتیبانی نمی‌کند.
  • قالب پاسخ JSON برای «جستجوی مکان‌های اطراف» (جدید) نسبت‌به قالب میاناهای برنامه‌سازی کاربردی قدیمی تغییر کرده است. برای جزئیات بیشتر، انتقال پاسخ Places API را ببینید.

جدول زیر پارامترهای موجود در «جستجوی مکان‌های اطراف (قدیمی)» را که برای «جستجوی مکان‌های اطراف (جدید)» تغییر نام داده یا اصلاح شده‌اند، یا پارامترهایی را که دیگر پشتیبانی نمی‌شوند فهرست می‌کند.

پارامتر فعلی پارامتر جدید یادداشت‌ها
keyword پشتیبانی نمی‌شود. به‌جای آن از جستجوی نوشتاری (جدید) استفاده کنید.
language languageCode
location locationRestriction الزامی.
maxprice/minprice پشتیبانی نمی‌شود.
maxResultCount پارامتر جدید.
opennow پشتیبانی نمی‌شود.
pagetoken پشتیبانی نمی‌شود.
radius اکنون از locationRestriction استفاده کنید.
rankby rankPreference
regionCode پارامتر جدید.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
پارامترهای جدید مقادیر چندنوعی را نیز می‌پذیرند. «میانای برنامه‌سازی کاربردی» قدیمی فقط یک مقدار را می‌پذیرد.

درخواست نمونه

درخواست 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