يقدّم هذا الدليل إطلاقًا تجريبيًا لطريقتَي واجهة برمجة التطبيقات OptimizeToursLongRunning
وOptimizeToursUri
اللتين تتيحان للمستخدمين تقديم طلبات تحسين واحدة
غير مانعة. في عملية التحسين غير المحظورة، يتلقّى المستخدم
سريعًا ملف Operation proto من الطريقة التي يمكن استخدامها
للإشارة إلى حالة التحسين من خلال طلب GetOperation
.
اطّلِع على العمليات التي تستغرق وقتًا طويلاً
لمزيد من التفاصيل.
توفّر هذه الطرق غير المحظورة مزايا الموثوقية على طريقة الحظر OptimizeTours
لأنّ العميل ليس بحاجة إلى الحفاظ على الاتصال بالخادم أثناء تنفيذ عملية تحسين الأداء. بالإضافة إلى ذلك، تسهِّل هذه الطرق الجديدة تصحيح أخطاء
عمليات الفشل مقارنةً بـ BatchOptimizeTours
لأنّ كل عملية تحسين مرتبطة
بعملية واحدة طويلة الأمد (LRO).
يمكن للمستخدمين الذين يفضّلون تضمين طلب التحسين استخدام الطريقة
OptimizeToursLongRunning
، في حين يمكن للمستخدمين الذين يفضّلون تحميل
الطلبات والاستجابة المقروءة باستخدام Google Cloud Storage استخدام الطريقة
OptimizeToursUri
.
OptimizeToursLongRunning
مثال: تقديم طلب OptimizeToursLongRunning
قبل تقديم طلب، استبدِل المَعلمات التالية بقيم مناسبة لبيئة موقعك الإلكتروني:
- تأكَّد من ضبط بيانات الاعتماد التلقائية للتطبيق على النحو الموضّح في مقالة استخدام بروتوكول OAuth.
اضبط PROJECT_NUMBER_OR_ID على رقم مشروع Cloud أو رقم تعريفه.
يُرسِل الأمر التالي طلبًا من النوع
OptimizeToursLongRunning
إلى واجهة برمجة التطبيقات Route Optimization API ويتلقّى رقم تعريف عملية مرتبطًا به. يمكن استخدام الطريقةGetOperation
للاستعلام عن حالة العملية. بعد اكتمال العملية، تحتوي البيانات الوصفية أيضًا على القيمة النهائية لملف العميلOptimizeToursResponse
.curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeToursLongRunning' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data @- <<EOM { "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.42506261000996, "longitude": -122.09535511930135 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.42421503206021, "longitude": -122.09526063135228 } } ] } ], "vehicles": [ { "travelMode": "DRIVING", "costPerKilometer": 1.0 } ], } } EOM
OptimizeToursUri
مثل BatchOptimizeTours
، يمكنك استخدام OptimizeToursUri
لمواصلة
تخزين طلب التحسين والاستجابة عليه في Google Cloud Storage.
يجب تحديد معرّفات الموارد المنتظمة (URI) لخدمة Cloud Storage في رسالة طلب OptimizeToursUri
.
لا ترتبط حالة Operation
المعروضة إلا بالملف الفردي الذي تم إرساله
OptimizeToursRequest
.
مثال: تقديم طلب OptimizeToursUri
قبل تقديم طلب، استبدِل المَعلمات التالية بقيم مناسبة لبيئة موقعك الإلكتروني:
- تأكَّد من ضبط بيانات الاعتماد التلقائية للتطبيق على النحو الموضّح في استخدام OAuth.
اضبط PROJECT_NUMBER_OR_ID على رقم مشروع Cloud أو رقم تعريفه.
يُرسِل الأمر التالي طلبًا من النوع
OptimizeToursUri
إلى واجهة برمجة التطبيقات Route Optimization API ويتلقّى رقم تعريف عملية مرتبطًا به. استخدِم طريقةGetOperation
لطلب البحث عن حالة العملية. بعد اكتمال العملية، يتم تخزينOptimizeToursResponse
عن بُعد في مسار عنوان URL الناتج المقدَّم في الطلب.curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeToursUri' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data @- <<EOM { "input": { "uri": "gs://bucket/path/input/object.json" }, "output": { "uri": "gs://bucket/path/output/object.json" } } EOM