JAVA REST

يمكنك تنزيل عميل واجهة برمجة التطبيقات لتعديل البيانات في الوقت الفعلي باستخدام Java للمساعدة في بدء تنفيذ التعديلات في الوقت الفعلي.

متطلب أساسي:

أنشئ حساب الخدمة، ثم نزِّل مفتاحك الخاص.

البدء:

  1. نزِّل مكتبة برامج Java وفكِّ ضغط الملف للحصول على حزمة "mapsbooking" .
  2. أنشئ مشروعًا باستخدام Java في بيئة تطوير البرامج المتكاملة (IDE)، ثم نزِّل نموذجَي الرموز البرمجية InventoryUpdate.java و BookingNotification.java من هذا المستودع:

    git clone https://maps-booking.googlesource.com/java-maps-booking-api-example

    واستورِدها إلى مشروع java ضمن الدليل src.

  3. أنشئ نسخة من مفتاحك الخاص (ملف JSON) في الدليل src.
  4. أضِف مكتبة Java Client Library إلى التبعيات في مشروعك (تضمين ملفات jar ضمن دليلَي mapsbooking وlibs-sources)
  5. في كلٍّ من ملفّي java، اتّبِع المهام التي يجب إكمالها لإكمال عمليات التنفيذ.

يمكنك الاطّلاع على مزيد من التفاصيل حول واجهة برمجة التطبيقات REST API هنا.

تحرّي الخلل وإصلاحه:

  1. عند محاولة إنشاء تاجر/خدمة جديدَين باستخدام معرّف تاجر أو معرّف خدمة حاليَين، ستظهر لك رسالة الخطأ التالية:

    409 Conflict
    {
      code : 409,
      errors :
        [{
            domain : global,
            message : Requested entity already exists,
            reason : alreadyExists,
            debugInfo : detail: "[ORIGINAL ERROR] generic::already_exists: ...”\n"
        }],
      message : Requested entity already exists,
      status : ALREADY_EXISTS
    }
  2. عند إجراء طلب استبدال معلومات التوفّر باستخدام معرّف تاجر أو معرّف خدمة غير صالحَين، لن تظهر رسالة خطأ. ويعود السبب في ذلك إلى أنّه يمكن تنفيذ التغييرات على خانات مدى التوفّر من خلال طلبات البحث عن معلومات المنتجات بدون ترتيب معيّن، وبالتالي لا تكون مرتبطة بمعرّف التاجر أو معرّف الخدمة. ومع ذلك، لن يتم عرض الفتحات في الطلب في قناة الإصدار العلني بسبب عدم صلاحية merchantId أو serviceId. لعرض الشرائح، يُرجى إضافة التاجر أو الخدمة غير المتوفّرة من خلال طلبات البحث عن المنتجات أو الخلاصات.
  3. في جميع دوال التعديل، يجب أن تكون المَعلمة updateMask بتنسيق FieldMask لتحديد الحقول التي سيتم تعديلها. يجب أن تغيِّر واجهة برمجة التطبيقات قيم الحقول فقط على النحو المحدّد في القناع وتترك القيم الأخرى بدون تغيير. في حال تم إدخال سلسلة updateMask غير صحيحة، لن يتم تطبيق التعديل. إذا لم يكن هناك قناع حقل عند إجراء عملية تعديل، يتم تطبيق العملية على جميع الحقول (كما لو تم تحديد قناع حقل لكل الحقول). إذا كنت تريد تعديل كل الحقول، ما عليك سوى ضبط updateMask على القيمة فارغة.
  4. لا يتم عرض أي حقل له قيمة صفر في الاستجابة.