Places API از جستجوی متن موجود پشتیبانی می کند. اگر با جستجوی متن موجود آشنا هستید، نسخه جدید جستجوی متن تغییرات زیر را اعمال می کند:
- جستجوی متن جدید از درخواست های HTTP POST استفاده می کند. پارامترها را در بدنه درخواست یا در هدرها به عنوان بخشی از درخواست HTTP POST ارسال کنید. در مقابل، با جستجوی متن موجود، پارامترهای URL را با استفاده از درخواست HTTP GET ارسال می کنید.
- پوشاندن میدان مورد نیاز است. شما باید مشخص کنید که کدام فیلدها را می خواهید در پاسخ بازگردانید. هیچ لیست پیش فرضی از فیلدهای برگشتی وجود ندارد. اگر این لیست را حذف کنید، متدها با خطا مواجه می شوند. برای اطلاعات بیشتر، FieldMask را ببینید.
- جستجوی متن جدید از کلیدهای API و نشانه های OAuth به عنوان مکانیزم احراز هویت پشتیبانی می کند.
- فقط JSON به عنوان قالب پاسخ در جستجوی متن جدید پشتیبانی می شود.
جستجوی متن موجود به شما امکان می دهد مختصات طول و عرض جغرافیایی را در رشته پرس و جو مشخص کنید. به عنوان مثال:
query=37.4239,-122.0925
. این گزینه در جستجوی متن جدید پشتیبانی نمی شود.از Reverse Geocoding برای جستجوی مختصات و بازگرداندن یک آدرس یا از جستجوی نزدیک (جدید) برای یافتن مکانها در اطراف یک مکان خاص استفاده کنید.
- قالب پاسخ JSON برای API جستجوی متن (جدید) از قالب APIهای موجود تغییر کرده است. برای جزئیات بیشتر، به انتقال پاسخ API Places مراجعه کنید.
جدول زیر پارامترهایی را در جستجوی متن موجود فهرست میکند که برای جستجوی متن جدید تغییر نام داده یا اصلاح شدهاند، یا پارامترهایی که دیگر پشتیبانی نمیشوند.
پارامتر فعلی | پارامتر جدید | یادداشت ها |
---|---|---|
evOptions | پارامتر جدید | |
language | languageCode | |
location | locationBias | |
maxprice/minprice | priceLevels | |
opennow | openNow | |
pagetoken | pageToken | |
query | textQuery | در تمام درخواست ها الزامی است. |
radius | locationBias | هنگام تعریف locationBias شعاع را مشخص کنید. |
region | regionCode | |
type | includedType | فقط یک مقدار واحد می گیرد. |
strictTypeFiltering | پارامتر جدید |
درخواست نمونه
مثال زیر درخواست GET از جستجوی متن موجود استفاده می کند. در این مثال، شما یک پاسخ JSON حاوی اطلاعاتی درباره «غذای گیاهی تند در سیدنی، استرالیا» درخواست میکنید و همه پارامترها را به عنوان پارامترهای URL ارسال میکنید:
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'