InvokeRESTAPI@1 - استدعاء مهمة REST API v1
استخدم هذه المهمة لاستدعاء واجهة برمجة تطبيقات REST كجزء من البنية الأساسية لبرنامج ربط العمليات التجارية الخاصة بك.
بناء الجملة
# Invoke REST API v1
# Invoke a REST API as a part of your pipeline.
- task: InvokeRESTAPI@1
inputs:
connectionType: 'connectedServiceName' # 'connectedServiceName' | 'connectedServiceNameARM'. Alias: connectedServiceNameSelector. Required. Connection type. Default: connectedServiceName.
serviceConnection: # string. Alias: connectedServiceName | genericService. Required when connectedServiceNameSelector = connectedServiceName. Generic service connection.
#azureServiceConnection: # string. Alias: connectedServiceNameARM | azureSubscription. Required when connectedServiceNameSelector = connectedServiceNameARM. Azure subscription.
method: 'POST' # 'OPTIONS' | 'GET' | 'HEAD' | 'POST' | 'PUT' | 'DELETE' | 'TRACE' | 'PATCH'. Required. Method. Default: POST.
#headers: # string. Headers.
#body: # string. Optional. Use when method != GET && method != HEAD. Body.
#urlSuffix: # string. URL suffix and parameters.
# Advanced
waitForCompletion: 'false' # 'true' | 'false'. Required. Completion event. Default: false.
#successCriteria: # string. Optional. Use when waitForCompletion = false. Success criteria.
# Invoke REST API v1
# Invoke a REST API as a part of your pipeline.
- task: InvokeRESTAPI@1
inputs:
connectionType: 'connectedServiceName' # 'connectedServiceName' | 'connectedServiceNameARM'. Alias: connectedServiceNameSelector. Required. Connection type. Default: connectedServiceName.
serviceConnection: # string. Alias: connectedServiceName. Required when connectedServiceNameSelector = connectedServiceName. Generic service connection.
#azureServiceConnection: # string. Alias: connectedServiceNameARM. Required when connectedServiceNameSelector = connectedServiceNameARM. Azure subscription.
method: 'POST' # 'OPTIONS' | 'GET' | 'HEAD' | 'POST' | 'PUT' | 'DELETE' | 'TRACE' | 'PATCH'. Required. Method. Default: POST.
#headers: # string. Headers.
#body: # string. Optional. Use when method != GET && method != HEAD. Body.
#urlSuffix: # string. URL suffix and parameters.
# Advanced
waitForCompletion: 'false' # 'true' | 'false'. Required. Completion event. Default: false.
#successCriteria: # string. Optional. Use when waitForCompletion = false. Success criteria.
الإدخالات
connectionType
- نوع الاتصال
الاسم المستعار للإدخل: connectedServiceNameSelector
. string
. مطلوب القيم المسموح بها: connectedServiceName
(عام)، connectedServiceNameARM
(Azure Resource Manager). القيمة الافتراضية: connectedServiceName
.
يحدد نوع اتصال الخدمة لاستخدامه لاستدعاء واجهة برمجة تطبيقات REST. حدد Azure Resource Manager لاستدعاء واجهة برمجة تطبيقات إدارة Azure أو عام لجميع واجهات برمجة التطبيقات الأخرى.
serviceConnection
- اتصال خدمة عام
الاسم المستعار للإدخل: connectedServiceName | genericService
. string
. مطلوب عند connectedServiceNameSelector = connectedServiceName
.
يحدد اتصال الخدمة العام الذي يوفر baseUrl للاستدعاء والتخويل لاستخدامه للمهمة.
serviceConnection
- اتصال خدمة عام
الاسم المستعار للإدخل: connectedServiceName
. string
. مطلوب عند connectedServiceNameSelector = connectedServiceName
.
يحدد اتصال الخدمة العام الذي يوفر baseUrl للاستدعاء والتخويل لاستخدامه للمهمة.
azureServiceConnection
- اشتراك Azure
الاسم المستعار للإدخل: connectedServiceNameARM | azureSubscription
. string
. مطلوب عند connectedServiceNameSelector = connectedServiceNameARM
.
يحدد اشتراك Azure Resource Manager لتكوين واستخدام لاستدعاء واجهات برمجة تطبيقات إدارة Azure.
azureServiceConnection
- اشتراك Azure
الاسم المستعار للإدخل: connectedServiceNameARM
. string
. مطلوب عند connectedServiceNameSelector = connectedServiceNameARM
.
يحدد اشتراك Azure Resource Manager لتكوين واستخدام لاستدعاء واجهات برمجة تطبيقات إدارة Azure.
method
- الاسلوب
string
. مطلوب القيم المسموح بها: OPTIONS
، GET
، HEAD
، POST
، PUT
، DELETE
، TRACE
. PATCH
القيمة الافتراضية: POST
.
يحدد أسلوب HTTP الذي يستدعي واجهة برمجة التطبيقات.
headers
- رؤوس
string
. القيمة الافتراضية: {\n"Content-Type":"application/json", \n"PlanUrl": "$(system.CollectionUri)", \n"ProjectId": "$(system.TeamProjectId)", \n"HubName": "$(system.HostType)", \n"PlanId": "$(system.PlanId)", \n"JobId": "$(system.JobId)", \n"TimelineId": "$(system.TimelineId)", \n"TaskInstanceId": "$(system.TaskInstanceId)", \n"AuthToken": "$(system.AccessToken)"\n}
.
تعريف العنوان بتنسيق JSON. يتم إرفاق العنوان بالطلب المرسل إلى واجهة برمجة التطبيقات.
body
- الجسم
string
. اختياري. استخدم عندما method != GET && method != HEAD
.
يحدد نص الطلب لاستدعاء الدالة بتنسيق JSON.
urlSuffix
- لاحقة URL والمعلمات
string
.
يحدد السلسلة المراد إلحاقها ب baseUrl من اتصال الخدمة العام أثناء إجراء استدعاء HTTP.
مثال: إذا كان عنوان URL لاتصال الخدمة ولاحقة https:...TestProj/_apis/Release/releases
URL هي /2/environments/1
، يصبح https:.../TestProj/_apis/Release/releases/2/environments/1
عنوان URL لاتصال الخدمة . إذا كانت لاحقة عنوان URL هي ?definitionId=1&releaseCount=1
، يصبح عنوان URL https//...TestProj/_apis/Release/releases?definitionId=1&releaseCount=1
لاتصال الخدمة .
waitForCompletion
- حدث الإكمال
string
. مطلوب القيم المسموح بها: true
(رد الاتصال)، false
(ApiResponse). القيمة الافتراضية: false
.
يحدد كيفية الإبلاغ عن إكمال المهمة. القيم المسموح بها هي:
false
- استجابة واجهة برمجة التطبيقات: يبلغ عن الإكمال عندما ترجع الدالة النجاح في غضون 20 ثانية، ويتم تقييم معايير النجاح إلى true.true
- رد الاتصال: يبلغ عن الإكمال عندما تقوم الخدمة الخارجية بإجراء رد اتصال لتحديث سجل المخطط الزمني.
successCriteria
- معايير النجاح
string
. اختياري. استخدم عندما waitForCompletion = false
.
يحدد معايير المهمة للنجاح. لا يؤثر محتوى الاستجابة على النتيجة إذا لم يتم تعريف أي معايير. بشكل افتراضي، تمر المهمة عند إرجاع 200 OK
الاستدعاء .
مثال: للاستجابة {"status" : "successful"}
، يمكن أن يكون eq(root['status'], 'successful')
التعبير . تعرف على المزيد حول تحديد الشروط.
خيارات التحكم بالمهمة
تحتوي جميع المهام على خيارات التحكم بالإضافة إلى مدخلات المهام الخاصة بها. لمزيد من المعلومات، راجع خيارات التحكم وخصائص المهمة الشائعة.
متغيرات الإخراج
لا شيء
الملاحظات
ملاحظة
يمكن استخدام هذه المهمة فقط في وظيفة بدون عامل.
ينجح إذا كانت واجهة برمجة التطبيقات ترجع النجاح وكان تحليل نص الاستجابة ناجحا، أو عندما تقوم واجهة برمجة التطبيقات بتحديث سجل المخطط الزمني بنجاح.
لا تنفذ مهمة Invoke REST API إجراءات التوزيع مباشرة. بدلا من ذلك، يسمح لك باستدعاء أي واجهة برمجة تطبيقات HTTP REST عامة كجزء من البنية الأساسية لبرنامج ربط العمليات التجارية التلقائية، واختياريا، انتظر حتى تكتمل.
لمزيد من المعلومات حول استخدام هذه المهمة، راجع نظرة عامة على الموافقات والبوابات.
ما هي عناوين URL الأساسية المستخدمة عند استدعاء واجهات برمجة تطبيقات Azure Management؟
يتم استدعاء واجهات برمجة تطبيقات إدارة Azure باستخدام ResourceManagerEndpoint للبيئة المحددة. على سبيل المثال https://management.azure.com
يتم استخدام عندما يكون الاشتراك في بيئة AzureCloud .
أين يجب إكمال إشارة المهمة عند اختيار رد الاتصال كحدث إكمال؟
للإشارة إلى الإكمال، يجب أن تنشر الخدمة الخارجية بيانات الإكمال إلى نقطة نهاية REST للبنية الأساسية لبرنامج ربط العمليات التجارية التالية.
{planUri}/{projectId}/_apis/distributedtask/hubs/{hubName}/plans/{planId}/events?api-version=2.0-preview.1
**Request Body**
{ "name": "TaskCompleted", "taskId": "taskInstanceId", "jobId": "jobId", "result": "succeeded" }
راجع تطبيق cmdline البسيط هذا للحصول على تفاصيل.
بالإضافة إلى ذلك، تتوفر مكتبة مساعد C# لتمكين التسجيل المباشر وإدارة حالة المهمة للمهام بدون عامل. معرفة المزيد
هل يمكنني استخدام نص الاستجابة كمدخل لمهمة أخرى؟
لا، لأن هذه المهمة هي مهمة بدون عامل وتستخدم HttpRequest الداخلي ل TFS، والذي لا يرجع محتوى طلب HTTP.
مثال
steps:
- task: InvokeRESTAPI@1
displayName: 'Invoke REST API: GET'
inputs:
serviceConnection: 'generic_demo'
method: GET
successCriteria: 'eq(root[''count''], ''1425'')'
في هذا المثال، تنجح المهمة عندما تتطابق الاستجابة مع successCriteria
: eq(root[''count'], ''1425'')).
المتطلبات
المتطلبات | الوصف |
---|---|
أنواع البنية الأساسية لبرنامج ربط العمليات التجارية | YAML، الإصدار الكلاسيكي، الإصدار الكلاسيكي |
يعمل على | Server, ServerGate |
المطالب | بلا |
القدرات | لا تفي هذه المهمة بأي متطلبات للمهام اللاحقة في الوظيفة. |
قيود الأوامر | أي |
متغيرات Settable | أي |
إصدار الوكيل | جميع إصدارات العامل المدعومة. |
فئة المهمة | نشر |