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

المطوّرون في المنطقة الاقتصادية الأوروبية

مقدمة

تتيح Places API استخدام البحث القريب (إصدار قديم). إذا كنت معتادًا على ميزة "البحث القريب" (الإصدار القديم)، ستلاحظ أنّ البحث القريب (الإصدار الجديد) يتضمّن التغييرات التالية:

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

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

المَعلمة الحالية معلَمة جديدة ملاحظات
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