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 عامة كجزء من البنية الأساسية لبرنامج ربط العمليات التجارية التلقائية، واختياريا، انتظر حتى تكتمل.

تكوين مهمة استدعاء واجهة برمجة تطبيقات 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 أي
إصدار الوكيل جميع إصدارات العامل المدعومة.
فئة المهمة نشر