Condividi tramite


InvokeRESTAPI@0 - Richiamare l'attività API REST v0

Usare questa attività per richiamare un'API REST come parte della pipeline.

Sintassi

# Invoke REST API v0
# Invoke REST API as a part of your process.
- task: InvokeRESTAPI@0
  inputs:
    serviceConnection: # string. Alias: connectedServiceName. Required. Generic endpoint. 
    method: 'POST' # 'OPTIONS' | 'GET' | 'HEAD' | 'POST' | 'PUT' | 'DELETE' | 'TRACE' | 'PATCH'. Required. Method. Default: POST.
    #headers: # string. Headers. 
    #body: '{"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}' # string. Optional. Use when method != GET && method != HEAD. Body. Default: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}.
    #urlSuffix: # string. Url suffix string. 
  # Completion Options
    waitForCompletion: 'false' # 'true' | 'false'. Required. Complete based on. Default: false.
    #successCriteria: # string. Optional. Use when waitForCompletion = false. Success criteria.

Input

serviceConnection - Endpoint generico
Alias di input: connectedServiceName. string. Obbligatorio.

Specifica la connessione al servizio generico che fornisce l'oggetto baseURL per la chiamata e l'autorizzazione da usare per l'attività.


method - Metodo
string. Obbligatorio. Valori consentiti: GETPOSTHEADPATCHOPTIONSPUTDELETETRACE, . Valore predefinito: POST.

Specifica il metodo HTTP che richiama l'API.


headers - Intestazioni
string. Valore predefinito: {\n"Content-Type":"application/json"\n}.

Definisce l'intestazione in formato JSON. L'intestazione è associata alla richiesta inviata all'API.


body - Corpo
string. facoltativo. Usare quando method != GET && method != HEAD. Valore predefinito: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}.

Specifica il corpo della richiesta per la chiamata di funzione in formato JSON.


urlSuffix - Stringa di suffisso URL
string.

Specifica la stringa da aggiungere alla connessione di baseUrl dalla connessione del servizio generico durante l'esecuzione della chiamata HTTP.

Esempio: se l'URL di connessione del servizio è e il suffisso URL è https:...TestProj/_apis/Release/releases/2/environments/1, l'URL di connessione del servizio diventa https:.../TestProj/_apis/Release/releases/2/environments/1. Se il suffisso URL è ?definitionId=1&releaseCount=1, l'URL di connessione del servizio diventa https//...TestProj/_apis/Release/releases?definitionId=1&releaseCount=1.


waitForCompletion - Completa basata su
string. Obbligatorio. Valori consentiti: true (Callback), false (ApiResponse). Valore predefinito: false.

Specifica il modo in cui l'attività segnala il completamento. Di seguito sono elencati i valori consentiti:

  • false - Risposta API: segnala il completamento quando la funzione restituisce l'esito positivo entro 20 secondi e i criteri di esito positivo restituisce true.
  • true - Callback: segnala il completamento quando il servizio esterno esegue un callback per aggiornare il record della sequenza temporale.

successCriteria - Criteri di successo
string. facoltativo. Usare quando waitForCompletion = false.

Specifica i criteri dell'attività per l'esito positivo. Il contenuto della risposta non influisce sul risultato se non vengono definiti criteri. Per impostazione predefinita, l'attività passa quando la chiamata restituisce 200 OK.

Esempio: per la risposta {"status" : "successful"}, l'espressione può essere eq(root['status'], 'successful'). Altre informazioni sulla specifica delle condizioni.


Opzioni di controllo delle attività

Tutte le attività dispongono di opzioni di controllo oltre ai relativi input attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.

Variabili di output

Nessuno.

Osservazioni

Nota

Questa attività può essere usata solo in un processo senza agente.

Se l'API restituisce esito positivo e l'analisi del corpo della risposta ha esito positivo o quando l'API aggiorna il record della sequenza temporale con esito positivo.

L'attività Invoke REST API non esegue direttamente le azioni di distribuzione. Consente invece di richiamare qualsiasi API REST HTTP generica come parte della pipeline automatizzata e, facoltativamente, attendere che venga completata.

Configurazione di un'attività DI API REST invoke

Per altre informazioni sull'uso di questa attività, vedere Panoramica delle approvazioni e dei cancelli.

Quali URL di base vengono usati quando si richiamano le API di gestione di Azure?

Le API di gestione di Azure vengono richiamate usando ResourceManagerEndpoint dell'ambiente selezionato. Ad esempio https://management.Azure.com , viene usato quando la sottoscrizione si trova in un ambiente AzureCloud .

Dove deve essere completato un segnale di attività quando callback viene scelto come evento di completamento?

Per segnalare il completamento, il servizio esterno deve INVIARE i dati di completamento all'endpoint REST delle pipeline seguenti.

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

Per specifiche, vedere questa semplice applicazione cmdline .

Inoltre, una libreria helper C# è disponibile per abilitare la registrazione dinamica e la gestione dello stato dell'attività per le attività senza agente. Scopri di più

È possibile usare il corpo della risposta come input per un'altra attività?

No, poiché questa attività è un'attività senza agente e usa HttpRequest interna di TFS, che non restituisce il contenuto della richiesta HTTP.

Requisiti

Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Esecuzione in Server, ServerGate
Richieste Nessuno
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Qualsiasi
Variabili impostabili Qualsiasi
Versione agente Tutte le versioni dell'agente supportate.
Categoria attività Distribuire