يقدّم هذا الدليل الإطلاق التجريبي لطريقتَي واجهة برمجة التطبيقات OptimizeToursLongRunning
وOptimizeToursUri
اللتَين تتيحان للمستخدمين تقديم طلبات تحسين فردية غير حظر. في عملية التحسين غير الحظر، يتلقّى المستخدم بسرعة بروتوكول Operation من الطريقة التي يمكن استخدامها للإشارة إلى حالة التحسين من خلال طلب GetOperation
.
يمكنك الاطّلاع على العمليات الطويلة الأمد
لمزيد من التفاصيل.
توفّر هذه الطرق غير الحظر مزايا الموثوقية مقارنةً بطريقة الحظر OptimizeTours
، لأنّ العميل لا يحتاج إلى الحفاظ على الاتصال بالخادم أثناء تنفيذ عملية التحسين. بالإضافة إلى ذلك، تسهّل هذه الطرق الجديدة عملية تصحيح الأخطاء مقارنةً بطريقة BatchOptimizeTours
، لأنّ كل عملية تحسين مرتبطة بعملية طويلة الأمد (LRO) واحدة.
يمكن للمستخدمين الذين يفضّلون تضمين طلب التحسين استخدام طريقة OptimizeToursLongRunning
، بينما يمكن للمستخدمين الذين يفضّلون تحميل الطلبات وقراءة الرد باستخدام Google Cloud Storage استخدام طريقة OptimizeToursUri
.
OptimizeToursLongRunning
مثال: تقديم طلب OptimizeToursLongRunning
قبل تقديم طلب، استبدِل المَعلمات التالية بقيم مناسبة لبيئتك:
- تأكَّد من إعداد بيانات الاعتماد التلقائية للتطبيق كما هو موضّح في استخدام OAuth.
اضبط قيمة PROJECT_NUMBER_OR_ID على رقم مشروعك أو رقم تعريفه على السحابة الإلكترونية.
يرسل الأمر التالي طلب
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 على رقم مشروعك أو رقم تعريفه على السحابة الإلكترونية.
يرسل الأمر التالي طلب
OptimizeToursUri
إلى واجهة برمجة التطبيقات Route Optimization API ويتلقّى رقم تعريف عملية مرتبطًا به. استخدِم طريقةGetOperation
لطلب البحث عن حالة العملية. بعد اكتمال العملية، يتم تخزينOptimizeToursResponse
عن بُعد في مسار معرّف الموارد الموحّد للناتج الذي تم تقديمه في الطلب.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