Webhook
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Den här artikeln beskriver webhooks och hur du konfigurerar dem för ditt Azure DevOps-projekt. Webhooks är ett sätt att skicka en JSON-representation av en Azure DevOps-händelse till alla tjänster som har en offentlig slutpunkt.
Kommentar
Azure DevOps debiteras inte för att konfigurera tjänstkrokar eller integrera med externa tjänster. Se den specifika tjänstens webbplats för priser relaterade till deras tjänster.
Förutsättningar
Du behöver följande förutsättningar för att hantera webhooks för en Azure DevOps-organisation:
Rollen Ägare eller Projektsamlingsadministratör i organisationen.
Ett projekt i organisationen och en tjänst med en offentlig HTTP- eller HTTPS-slutpunkt som du vill skicka Azure DevOps-händelser till.
Viktigt!
Vi rekommenderar att du endast använder HTTPS-slutpunkter. HTTP har potential att skicka privata data, inklusive autentiseringshuvuden, okrypterade i händelsenyttolasten. Du måste använda HTTPS för grundläggande autentisering på en webhook.
Skicka JSON-representation till en tjänst
I ditt Azure DevOps-projekt går du till Project settings>Service hooks på .
https://<organization-name>/<project-name>/_settings/serviceHooks
På sidan Service Hooks väljer du + ikonen eller Skapa prenumeration.
På skärmen Tjänst väljer du Web Hooks och sedan Nästa.
På skärmen Utlösare väljer och konfigurerar du den Azure DevOps-händelse som du vill utlösa webhooken på och väljer sedan Nästa. Mer information om JSON-nyttolaster som publicerats av Azure DevOps-konsumenten finns i Händelser med tjänstkrokar.
På skärmen Åtgärd konfigurerar du mål-URL:en och vad du ska göra när händelsen inträffar. Mer information om vad du anger i Resursinformation att skicka, Meddelanden att skicka och Detaljerade meddelanden att skicka finns i Resursinformation att skicka.
Kommentar
Webhooks kan inte rikta in sig på localhost (loopback) eller IPv4/IPv6-adresser för specialintervall.
Välj Testa för att testa prenumerationen på tjänstkroken.
När testet har slutförts stänger du meddelandeskärmen och väljer sedan Slutför på åtgärdsskärmen .
Nu har webhooken konfigurerats. Gå till måltjänsten för att visa JSON-representationen.
Dricks
Du kan också skapa en webhook programmatiskt. Mer information finns i Skapa en tjänstkrokprenumeration programmatiskt.
Resursinformation som ska skickas
Resursinformationen som ska skickas, Meddelanden att skicka och Detaljerade meddelanden för att skicka inställningar i åtgärdsfönstret styr storleken på JSON-nyttolasten som ska skickas. Resursinformation för att skicka styr hur mycket av resursen som ska skickas. Standardvärdet är Alla, men du kan också välja att skicka Minimal, som endast skickar nyckelfält som URL och ID eller Ingen.
Ingen och Minimal är användbara i scenarier där anroparen inte behöver mycket eller någon information om resursen, eftersom den förlitar sig på själva meddelandet eller det detaljerade meddelandet. Ingen och Minimal är också användbara av säkerhetsskäl. Anroparen måste anropa tillbaka till Azure DevOps Services och gå igenom vanliga säkerhets- och behörighetskontroller för att få mer information om resursen.
Följande JSON-exempel visar minimal information om resursen:
{
"eventType": "git.push",
...
"messages": {
"text": "...",
"html": "...",
"markdown": "..."
},
"detailedMessage": {
"text": "...",
"html": "...",
"markdown": "..."
},
"resource": {
"id": "...",
"url": "https://...",
"name": "...",
"field1:": "..."
}
}