نقل البيانات إلى ميزة "البحث عن قرب" (ميزة جديدة)

تتوافق واجهة Places API مع البحث عن قرب الحالي. إذا كنت معتادًا على ميزة "البحث عن قرب" الحالية، يُجري الإصدار الجديد من ميزة "البحث عن قرب" التغييرات التالية:

  • يستخدم البحث عن قرب الجديد طلبات HTTP POST. تمرير المعلَمات في نص الطلب أو في العناوين كجزء من طلب HTTP POST وفي المقابل، مع ميزة "البحث عن قرب" الحالية، يمكنك تمرير معلَمات عناوين URL باستخدام طلب HTTP GET.
  • يجب إخفاء الحقول. يجب تحديد الحقول التي تريد عرضها في الرد. لا تتوفّر قائمة تلقائية للحقول المعروضة. وإذا حذفت هذه القائمة، ستعرض الطرق خطأً. للحصول على مزيد من المعلومات، يُرجى الاطّلاع على FieldMask.
  • يتوافق الإصدار الجديد من ميزة "البحث عن قرب" مع كل من مفاتيح واجهة برمجة التطبيقات والرموز المميّزة لـ OAuth كآلية للمصادقة.
  • يمكن استخدام تنسيق JSON فقط كتنسيق للاستجابة في ميزة "البحث عن قرب" الجديدة.
  • الآن، جميع الطلبات التي تتضمّن طلب بحث نصي يجب أن تستخدم الآن البحث النصي (جديد) لأنّ ميزة "البحث عن قرب" (جديد) لا تتيح إدخال النص.
  • تم تغيير تنسيق استجابة JSON لواجهة برمجة التطبيقات الخاصة بالبحث عن قرب (جديدة) من تنسيق واجهات برمجة التطبيقات الحالية. لمزيد من التفاصيل، يمكنك الاطّلاع على نقل الردّ على Places API.

يسرد الجدول التالي المعلَمات في ميزة "البحث عن قرب" الحالية التي تمت إعادة تسميتها أو تعديلها لميزة "البحث عن قرب" الجديدة، أو المعلَمات التي لم تعُد متوافقة.

المَعلمة الحالية معلَمة جديدة Notes
keyword غير متاح. استخدِم البحث النصي (جديد) بدلاً من ذلك.
language languageCode
location locationRestriction مطلوبة.
maxprice/minprice غير متاح.
maxResultCount مَعلمة جديدة.
opennow غير متاح.
pagetoken غير متاح.
radius استخدِم "locationRestriction" الآن.
rankby rankPreference
regionCode مَعلمة جديدة.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
تقبل المعلمات الجديدة أيضًا قيم أنواع متعددة. ولا تقبل واجهة برمجة التطبيقات الحالية سوى قيمة واحدة.

مثال على الطلب

في ما يلي مثال لطلب 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