REST API görevi çağır

Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018

Bir HTTP API 'SI çağırmak ve yanıtı ayrıştırmak için bu görevi kullanın.

Not

Microsoft Team Foundation Server (TFS) 2018 ve önceki sürümlerde, derleme ve yayın işlem hatları tanımlar olarak adlandırılır, çalışmalara derlemeler denir, hizmet bağlantılarına hizmet uç noktaları denir, aşamalar ortamlar olarak adlandırılır ve işler aşamalar olarak adlandırılır.

Bu görev TFS 2018 RTM 'de TFS 2018,2 ' de bulunan derlemeler ve yayınlar için kullanılabilir, bu görev yalnızca sürümlerde kullanılabilir.

Erişim

Bu görev yalnızca aracısız bir iştekullanılabilir.

YAML kod parçacığı

# Invoke REST API
# Invoke a REST API as a part of your pipeline.
- task: InvokeRESTAPI@1
  inputs:
    #connectionType: 'connectedServiceName' # Options: connectedServiceName, connectedServiceNameARM
    #serviceConnection: # Required when connectionType == ConnectedServiceName
    #azureServiceConnection: # Required when connectionType == ConnectedServiceNameARM
    #method: 'POST' # Options: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, PATCH
    #headers: '{Content-Type:application/json, PlanUrl: $(system.CollectionUri), ProjectId: $(system.TeamProjectId), HubName: $(system.HostType), PlanId: $(system.PlanId), JobId: $(system.JobId), TimelineId: $(system.TimelineId), TaskInstanceId: $(system.TaskInstanceId), AuthToken: $(system.AccessToken)}' 
    #body: # Required when method != GET && Method != HEAD
    #urlSuffix: # Optional
    #waitForCompletion: 'false' # Options: true, false
    #successCriteria: # Optional

Bağımsız değişkenler

Parametre Yorumlar
Bağlantı türü Gereklidir. Azure Yönetim API 'sini veya diğer tüm API 'Ler için genel 'i çağırmak üzere Azure Resource Manager seçin.
Genel hizmet bağlantısı Gereklidir. Çağrının temel URL 'sini ve kullanılacak yetkilendirmeyi sağlayan genel hizmet bağlantısı.
Azure aboneliği Gereklidir. Azure Yönetim API 'Lerini çağırmak için yapılandırılacak ve kullanılacak aboneliği Azure Resource Manager.
Yöntem Gereklidir. API 'nin çağrıldığı HTTP yöntemi; Örneğin, Get, PUT veya Update.
Üst Bilgiler İsteğe bağlı. API 'ye gönderilen isteğe eklenecek JSON biçimindeki üst bilgi.
Gövde İsteğe bağlı. JSON biçiminde işlev çağrısının istek gövdesi.
URL soneki ve parametreleri HTTP çağrısını yaparken genel hizmet bağlantısından baseUrl 'ye eklenecek dize
Tamamlanmasını bekle Gereklidir. Görevin tamamlanma raporları. API yanıtı olabilir (varsayılan)-tamamlama işlevi, 20 saniye içinde işlevin başarılı döndüğü ve başarı ölçütlerinin doğru veya geri çağırma yaptığı zaman, dış hizmet, zaman çizelgesi kaydını güncelleştirmek için bir geri çağırma işlemi yapar.
Başarı ölçütleri İsteğe bağlı. Başarı için yanıt gövdesini ayrıştırma. Varsayılan olarak,, çağrıdan 200 Tamam döndürüldüğünde görev geçer. Ayrıca, Eğer belirtilmişse, başarı ölçütleri değerlendirilir.
Denetim seçenekleri Bkz. Denetim seçenekleri

API başarılı döndürürse ve yanıt gövdesi ayrıştırma başarılı olursa veya API, zaman çizelgesi kaydını başarılı olarak güncelleştirdiğinde başarılı olur.

Invoke REST API görevi doğrudan dağıtım eylemleri gerçekleştirmez. Bunun yerine, otomatik işlem hattının bir parçası olarak herhangi bir genel HTTP REST API çağırabilmeniz ve isteğe bağlı olarak bunun tamamlanmasını beklemeniz gerekir.

Invoke REST API görevi yapılandırma

Bu görevi kullanma hakkında daha fazla bilgi için bkz. onaylar ve kapıları genel bakış.

Açık kaynak

Ayrıca GitHub 'da bu göreviinceleyin.

SSS

Azure Yönetim API 'Lerini çağırırken hangi temel URL 'Ler kullanılır?

Azure Yönetim API 'Leri, seçilen ortamın Resourcemanagerendpoint kullanılarak çağrılır. Örneğin, https://management.Azure.com Abonelik Azurecyüksek ortamındaysanız kullanılır.

Tamamlama olayı olarak geri çağırma seçildiğinde nerede bir görev sinyali tamamlanmalıdır?

Dış hizmet, tamamlama IŞLEMINI işaret etmek için aşağıdaki işlem hattı REST uç noktasına kadar tamamlanma verileri göndermelidir.

{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" }

Ayrıntılar için Bu basit komut satırı uygulamasına bakın.

Ayrıca, canlı günlüğe kaydetmeyi etkinleştirmek ve aracısız görevler için görev durumunu yönetmek üzere bir C# yardımcı kitaplığı mevcuttur. Daha fazla bilgi