Webhook
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Webhooks är ett sätt att skicka en JSON-representation av en händelse till valfri tjänst. Det enda som krävs är en offentlig slutpunkt (HTTP eller HTTPS).
Mer information om JSON-nyttolaster som publicerats av den här konsumenten finns i händelser.
Förutsättningar
Endast organisationsägare eller projektsamlingsadministratörer kan hantera webhooks för en organisation.
Skicka JSON-representation till en tjänst
Gå till projektets tjänstkroksida :
https://{orgName}/{project_name}/_settings/serviceHooks
Välj Skapa prenumeration.
Välj och konfigurera Azure DevOps Services-händelsen:
Konfigurera vad du ska göra när händelsen inträffar:
Se följande Q &A för information om resursinformation som ska skickas, Meddelanden att skicka och Detaljerade meddelanden för att skicka inställningar.
Testa prenumerationen på tjänstkroken och slutför guiden:
Nu har webhooken konfigurerats. Gå till måltjänsten för att visa JSON-representationen:
Prissättning
Azure DevOps debiterar inte för ramverket för integrering med externa tjänster. Kolla in den specifika tjänstens webbplats för priser relaterade till deras tjänster.
Frågor och svar
F: Vad är resursinformationen som ska skickas, Meddelanden att skicka och Detaljerade meddelanden att skicka inställningar för?
S: De styr storleken på JSON-nyttolasten som skickas.
Inställningen Resursinformation som ska skickas styr hur mycket av resursen som skickas. Standardvärdet är Alla, men du kan också välja att skicka Minimal (skickar bara nyckelfält som URL och ID) eller Ingen.
Ingen och Minimal är användbara i scenarier där anroparen faktiskt inte behöver mycket, om något, om resursen eftersom den förlitar sig på meddelandet eller det detaljerade meddelandet. Ingen och Minimal är också användbara av säkerhetsskäl, till exempel måste anroparen anropa tillbaka till Azure DevOps Services och gå igenom vanliga säkerhets-/behörighetskontroller för att få mer information om resursen.
Exempel på JSON:
{
"eventType": "git.push",
...
"messages": {
"text": "...",
"html": "...",
"markdown": "..."
},
"detailedMessage": {
"text": "...",
"html": "...",
"markdown": "..."
},
"resource": {
"id": "...",
"url": "https://...",
"name": "...",
"field1:": "..."
}
}
F: Kan jag programmatiskt skapa prenumerationer?
S: Ja, se information här.
F: Kan jag skicka webhooks till icke HTTPS-slutpunkter?
S: Ja. Vi rekommenderar dock att du bara använder HTTPS-slutpunkter för dina webhooks. Att använda HTTP innebär att det finns en potential för att privata data skickas okrypterade. Detta inkluderar alla autentiseringshuvuden i din webhook.
F: Kan jag använda grundläggande autentisering när jag konfigurerar en webhook som inte är HTTPS?
S: Nej. Du måste använda HTTPS när du använder grundläggande autentisering på en webhook.
F: Kan vi använda localhost- eller specialintervall-IP-adresser som webhookmål?
S: Nej. Webhooks kan inte rikta in sig på localhost (loopback) eller IPv4/IPv6-adresser för specialintervall.
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för