ويمكنك تنزيل برنامج واجهة برمجة التطبيقات للتحديث في الوقت الفعلي من Java لمساعدتك على بدء تنفيذ التحديثات في الوقت الفعلي.
متطلب أساسي:
بعد إنشاء حساب الخدمة، نزِّل مفتاحك الخاص.
البدء:
- نزِّل مكتبة برامج Java بفك ضغط الملف للحصول على حزمة "حجز الخرائط".
-
أنشئ مشروع JavaScript في بيئة التطوير المتكاملة (IDE)، ونزِّل نماذج الرموز InventoryUpdate.java وBookingNotification.java من هذا المستودع:
git clone https://maps-booking.googlesource.com/java-maps-booking-api-example
وقم باستيرادها إلى مشروع جافا ضمن دليل src.
- أنشئ نسخة من مفتاحك الخاص (ملف JSON) في دليل src.
- أضِف مكتبة برامج Java إلى العناصر الاعتمادية لمشروعك (بما في ذلك ملفات jar ضمن سجلّ الخرائط ودليل libs-sources).
- في كل من ملفات جافا، اتبع المهام لإكمال عمليات التنفيذ
يمكن الاطّلاع على مزيد من التفاصيل حول واجهة برمجة تطبيقات REST هنا.
تحرّي الخلل وإصلاحه:
-
عند محاولة إنشاء تاجر/خدمة جديدة باستخدام معرّف MerchantId أو serviceId حاليَين، ستظهر لك رسالة الخطأ التالية:
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” }
- عند إجراء طلب للاستبدال بمعرّف التاجر أو معرّف الخدمة غير صالحَين، لن يؤدي الاتصال إلى ظهور رسالة خطأ. ويرجع ذلك إلى أنّ التغييرات في خانات مدى التوفّر من خلال وحدات RTU تتيح إمكانية التنفيذ خارج الطلب، وبالتالي لا ترتبط بمعرّف التاجر أو رقم تعريف الخدمة. ومع ذلك، لن يتم عرض الخانات الواردة في الطلب في الإصدار العلني، وذلك بسبب معرّف التاجر أو رقم تعريف الخدمة غير صالحَين. لإتاحة الخانات للعرض، يُرجى إضافة التاجر أو الخدمة غير المتوفّرة عبر وحدات RTU أو الخلاصات.
- في جميع دوال التعديل، يجب أن تكون المَعلمة "updateMask" بتنسيق FieldMask لتحديد الحقول المطلوب تعديلها. ويجب استخدام واجهة برمجة التطبيقات لتغيير قيم الحقول فقط على النحو المحدّد في القناع وترك الأخرى بدون تغيير. إذا تخطّيت سلسلة updateMask الخاطئة، لن يتم تطبيق التعديل. في حال عدم توفّر قناع حقل عند التحديث، ستنطبق العملية على جميع الحقول (كما لو تم تحديد قناع حقل لجميع الحقول). وبالتالي، إذا أردت تعديل جميع الحقول، ما عليك سوى ضبط updateMask فارغًا.
- لن يظهر أي حقل يحتوي على قيمة صفرية في الإجابة.