Ist es möglich, HTTP (s) Post-Anforderung in Azure-Funktion zu erstellen? Ich versuche, einen benutzerdefinierten Webhook zu erstellen, der einen Dienst abhört, und wenn er ausgelöst wird, ruft er einen anderen Dienst über HTTP mit Hilfe von post auf.Azure-Funktionen rufen http Post innerhalb Funktion
Mein Code sieht wie folgt aus:
public static async Task<HttpResponseMessage> Run(HttpRequestMessage req, TraceWriter log)
{
BitbucketRequest data = await req.Content.ReadAsAsync<BitbucketRequest>();
//DO STH WITH DATA TO GET e.g. USER STORY ID
using(var client = new HttpClient()){
client.BaseAddress = new Uri("https://SOME_TARGETPROCESS_URL/api/v1");
var body = new { EntityState = new { Id = 174 } };
var result = await client.PostAsJsonAsync(
"/UserStories/7034/?resultFormat=json&access_token=MYACCESSTOKEN",
body);
string resultContent = await result.Content.ReadAsStringAsync();
}
return req.CreateResponse<string>(HttpStatusCode.OK,"OKOK");
}
Ich nehme an, das Problem ist, dass derzeit HttpRequestMessage Web-Buchse besetzt und ich kann nicht neue HTTP-Anforderung erstellen.
Fehler, die ich in Ausnahmen Details gefunden:
- Die zugrunde liegende Verbindung wurde geschlossen: ein unerwarteter Fehler bei einem senden.
- Daten von der Transportverbindung konnten nicht gelesen werden: Eine bestehende Verbindung wurde vom Remote-Host zwangsweise geschlossen.
- Sockel Ausnahmefehlercode: 10054
Problem gefunden Standardmäßig wurde keine Unterstützung für TLS 1.2 aktiviert (die von Endpoint I aufgerufen wurde). System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; –
Sie haben Recht; das hat auch für mich funktioniert! –