مقدمة
تتيح Places API استخدام Nearby Search (الإصدار القديم). إذا كنت معتادًا على ميزة "البحث القريب" (الإصدار القديم)، ستلاحظ أنّ البحث القريب (الإصدار الجديد) يتضمّن التغييرات التالية:
- تستخدم خدمة Nearby Search (جديدة) طلبات HTTP POST. يمكنك تمرير المَعلمات في نص الطلب أو في العناوين كجزء من طلب HTTP POST. في المقابل، عند استخدام خدمة "البحث القريب" (الإصدار القديم)، يمكنك تمرير مَعلمات عنوان URL باستخدام طلب HTTP GET.
- يجب إخفاء الحقل. يجب تحديد الحقول المطلوب عرضها في الرد. لا توجد قائمة تلقائية بالحقول التي يتم عرضها. إذا حذفت هذه القائمة، ستعرض الطرق خطأ. لمزيد من المعلومات، يُرجى الاطّلاع على FieldMask.
- تتيح واجهة برمجة التطبيقات Nearby Search (New) استخدام كل من مفاتيح واجهة برمجة التطبيقات ورموز OAuth كآلية مصادقة.
- لا يتوفّر سوى تنسيق JSON كشكل استجابة في "البحث القريب" (إصدار جديد).
- يجب أن تستخدم جميع الطلبات التي تتضمّن طلب بحث نصيًا الآن الاستعلام عن نص (جديد) لأنّ ميزة "البحث في الأماكن القريبة (جديد)" لا تتيح إدخال نص.
- تغيّر تنسيق استجابة JSON لواجهة Nearby Search (New) API عن تنسيق واجهات برمجة التطبيقات القديمة. لمزيد من التفاصيل، يُرجى الاطّلاع على نقل استجابة Places API.
يسرد الجدول التالي المَعلمات في Nearby Search (الإصدار القديم) التي تمت إعادة تسميتها أو تعديلها في Nearby Search (الإصدار الجديد)، أو المَعلمات التي لم تعُد متاحة.
| المَعلمة الحالية | معلَمة جديدة | ملاحظات |
|---|---|---|
keyword |
غير متوافقة. استخدِم البحث النصي (جديد) بدلاً من ذلك. | |
language |
languageCode |
|
location |
locationRestriction |
الحقل مطلوب. |
maxprice/minprice |
|
غير متوافقة. |
maxResultCount |
معلَمة جديدة | |
opennow |
|
غير متوافقة. |
pagetoken |
غير متوافقة. | |
radius |
|
استخدِم locationRestriction الآن. |
rankby |
rankPreference |
|
regionCode |
معلَمة جديدة | |
type |
includedTypesexcludedTypesincludedPrimaryTypesexcludedPrimaryTypes
|
تقبل المَعلمات الجديدة أيضًا قيمًا متعددة الأنواع. لا تقبل واجهة برمجة التطبيقات القديمة سوى قيمة واحدة. |
مثال على الطلب
يستخدم مثال طلب GET التالي خدمة "البحث القريب" (الإصدار القديم). في هذا المثال، تطلب استجابة 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'
باستخدام ميزة "البحث القريب" (الجديدة)، يمكنك إرسال طلب 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