InvokeRESTAPI@0 - REST API v0-taak aanroepen
Gebruik deze taak om een REST API aan te roepen als onderdeel van uw pijplijn.
Syntax
# 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.
Invoerwaarden
serviceConnection
- Algemeen eindpunt
Invoeralias: connectedServiceName
. string
. Vereist.
Hiermee geeft u de algemene serviceverbinding op die zorgt voor de baseURL
aanroep en de autorisatie die voor de taak moet worden gebruikt.
method
- Methode
string
. Vereist. Toegestane waarden: OPTIONS
, GET
, HEAD
, POST
, PUT
, DELETE
, , TRACE
, . PATCH
Standaardwaarde: POST
.
Hiermee geeft u de HTTP-methode op die de API aanroept.
headers
- Headers
string
. Standaardwaarde: {\n"Content-Type":"application/json"\n}
.
Definieert de header in JSON-indeling. De header wordt gekoppeld aan de aanvraag die naar de API is verzonden.
body
- Lichaam
string
. Optioneel. Gebruik wanneer method != GET && method != HEAD
. Standaardwaarde: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}
.
Hiermee geeft u de aanvraagbody voor de functie-aanroep in JSON-indeling.
urlSuffix
- Tekenreeks url-achtervoegsel
string
.
Hiermee geeft u de tekenreeks op die moet worden toegevoegd aan de baseUrl van de algemene serviceverbinding tijdens het maken van de HTTP-aanroep.
Voorbeeld: als de URL van de serviceverbinding is https:...TestProj/_apis/Release/releases
en het URL-achtervoegsel is, wordt /2/environments/1
https:.../TestProj/_apis/Release/releases/2/environments/1
de URL van de serviceverbinding . Als het URL-achtervoegsel is, wordt ?definitionId=1&releaseCount=1
de URL https//...TestProj/_apis/Release/releases?definitionId=1&releaseCount=1
van de serviceverbinding .
waitForCompletion
- Voltooien op basis van
string
. Vereist. Toegestane waarden: true
(Callback), false
(ApiResponse). Standaardwaarde: false
.
Hiermee geeft u op hoe de voltooiing van de taak wordt gerapporteerd. De toegestane waarden zijn:
false
- API-antwoord: rapporteert voltooiing wanneer de functie binnen 20 seconden een succes retourneert en de succescriteria worden geƫvalueerd als waar.true
- Callback: rapporteert voltooiing wanneer de externe service een callback uitvoert om de tijdlijnrecord bij te werken.
successCriteria
- Succescriteria
string
. Optioneel. Gebruik wanneer waitForCompletion = false
.
Hiermee geeft u de criteria voor succes van de taak op. De antwoordinhoud heeft geen invloed op het resultaat als er geen criteria zijn gedefinieerd. De taak wordt standaard doorgegeven wanneer de aanroep retourneert 200 OK
.
Voorbeeld: voor antwoord {"status" : "successful"}
kan de expressie zijn eq(root['status'], 'successful')
. Meer informatie over het opgeven van voorwaarden.
Opties voor taakbeheer
Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties voor besturingselementen en algemene taakeigenschappen voor meer informatie.
Uitvoervariabelen
Geen.
Opmerkingen
Notitie
Deze taak kan alleen worden gebruikt in een taak zonder agent.
Slaagt als de API een succes retourneert en het parseren van de antwoordtekst is geslaagd, of wanneer de API de tijdlijnrecord bijwerkt met succes.
Met de taak REST API aanroepen worden implementatieacties niet rechtstreeks uitgevoerd. In plaats daarvan kunt u een algemene HTTP REST API aanroepen als onderdeel van de geautomatiseerde pijplijn en eventueel wachten totdat deze is voltooid.
Zie Overzicht van goedkeuringen en poorten voor meer informatie over het gebruik van deze taak.
Welke basis-URL's worden gebruikt bij het aanroepen van Azure Management-API's?
Azure-beheer-API's worden aangeroepen met behulp van ResourceManagerEndpoint van de geselecteerde omgeving. Wordt bijvoorbeeld https://management.Azure.com
gebruikt wanneer het abonnement zich in een AzureCloud-omgeving bevindt.
Waar moet een taak voltooiing aangeven wanneer callback is gekozen als voltooiingsevenement?
Om voltooiing aan te geven, moet de externe service post-voltooiingsgegevens naar het volgende pijplijn REST-eindpunt.
{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" }
Zie deze eenvoudige cmdline-toepassing voor meer informatie.
Daarnaast is er een C#-helperbibliotheek beschikbaar voor het inschakelen van livelogboekregistratie en het beheren van taakstatussen voor taken zonder agent. Meer informatie
Kan ik de hoofdtekst van het antwoord gebruiken als invoer voor een andere taak?
Nee, omdat deze taak een taak zonder agent is en gebruikmaakt van de interne HttpRequest van TFS, die niet de inhoud van de HTTP-aanvraag retourneert.
Vereisten
Vereiste | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Server, ServerGate |
Eisen | Geen |
Functies | Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak. |
Opdrachtbeperkingen | Alle |
Instelbare variabelen | Alle |
Agentversie | Alle ondersteunde agentversies. |
Taakcategorie | Implementeren |