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

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

مقدمه

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

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

    از زمین‌کدیابی معکوس برای جستجو براساس مختصات و برگرداندن نشانی، یا از جستجوی اطراف (جدید) برای پیدا کردن مکان‌های اطراف یک مکان خاص استفاده کنید.

  • قالب پاسخ JSON برای «جستجوی نوشتاری» (جدید) از قالب «میاناهای برنامه‌سازی کاربردی» قدیمی تغییر کرده است. برای جزئیات بیشتر، انتقال پاسخ Places API را ببینید.

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

پارامتر کنونی پارامتر جدید یادداشت‌ها
evOptions پارامتر جدید.
language languageCode
location locationBias
maxprice/minprice priceLevels
opennow openNow
pagetoken pageToken
query textQuery در همه درخواست‌ها الزامی است.
radius locationBias هنگام تعریف locationBias، شعاع را مشخص کنید.
region regionCode
type includedType فقط یک مقدار می‌گیرد.
strictTypeFiltering پارامتر جدید.

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

درخواست GET مثال زیر از «جستجوی نوشتاری» (قدیمی) استفاده می‌کند. در این مثال، شما درخواست پاسخ JSON حاوی اطلاعاتی درباره «غذای گیاهی تند در سیدنی، استرالیا» می‌کنید و همه پارامترها را به‌عنوان پارامترهای نشانی وب ارسال می‌کنید:

curl -L -X GET \
'https://maps.googleapis.com/maps/api/place/textsearch/json?query=Spicy%20Vegetarian%20Food%20in%20Sydney%20Australia&key=API_KEY

با «جستجوی نوشتاری» (جدید)، درخواست POST ایجاد می‌کنید و همه پارامترها را در بدنه درخواست JSON یا در سرایندها به‌عنوان بخشی از درخواست POST ارسال می‌کنید. این مثال همچنین از پوشش فیلد استفاده می‌کند تا پاسخ فقط شامل نام نمایشی و نشانی قالب‌بندی‌شده مکان باشد:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-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:searchText'