Places API از جستجوی موجود Nearby پشتیبانی می کند. اگر با Nearby Search موجود آشنا هستید، نسخه جدید Nearby Search تغییرات زیر را اعمال میکند:
- جستجوی جدید Nearby از درخواستهای HTTP POST استفاده میکند. پارامترها را در بدنه درخواست یا در هدرها به عنوان بخشی از درخواست HTTP POST ارسال کنید. در مقابل، با جستجوی Nearby موجود، پارامترهای URL را با استفاده از درخواست HTTP GET ارسال میکنید.
- پوشاندن میدان مورد نیاز است. شما باید مشخص کنید که کدام فیلدها را می خواهید در پاسخ بازگردانید. هیچ لیست پیش فرضی از فیلدهای برگشتی وجود ندارد. اگر این لیست را حذف کنید، متدها با خطا مواجه می شوند. برای اطلاعات بیشتر، FieldMask را ببینید.
- جستجوی جدید Nearby از کلیدهای API و نشانههای OAuth به عنوان مکانیزم احراز هویت پشتیبانی میکند.
- فقط JSON به عنوان قالب پاسخ در جستجوی جدید Nearby پشتیبانی میشود.
- همه درخواستهایی که شامل عبارت جستجوی متنی هستند، اکنون باید از جستجوی متن (جدید) استفاده کنند زیرا جستجوی نزدیک (جدید) از ورودی متن پشتیبانی نمیکند.
- قالب پاسخ JSON برای API جستجوی نزدیک (جدید) از قالب APIهای موجود تغییر کرده است. برای جزئیات بیشتر، به انتقال پاسخ API Places مراجعه کنید.
جدول زیر پارامترهای موجود در Nearby Search را که برای جستجوی جدید Nearby تغییر نام داده یا اصلاح شدهاند، یا پارامترهایی که دیگر پشتیبانی نمیشوند، فهرست میکند.
پارامتر فعلی | پارامتر جدید | یادداشت ها |
---|---|---|
keyword | پشتیبانی نمی شود. به جای آن از جستجوی متن (جدید) استفاده کنید. | |
language | languageCode | |
location | locationRestriction | مورد نیاز. |
maxprice/minprice |
| پشتیبانی نمی شود. |
maxResultCount | پارامتر جدید | |
opennow |
| پشتیبانی نمی شود. |
pagetoken | پشتیبانی نمی شود. | |
radius |
| اکنون از locationRestriction استفاده کنید. |
rankby | rankPreference | |
regionCode | پارامتر جدید | |
type | includedTypes excludedTypes includedPrimaryTypes excludedPrimaryTypes | پارامترهای جدید نیز مقادیر چندگانه را می پذیرند. API موجود فقط یک مقدار را می پذیرد. |
درخواست نمونه
مثال زیر درخواست GET از جستجوی موجود Nearby استفاده می کند. در این مثال، شما یک پاسخ 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'
با جستجوی Nearby (جدید)، یک درخواست 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