Laden...

Warum liefert Rest Service beim POST keine Daten?

Erstellt von brave_snoopy vor 3 Jahren Letzter Beitrag vor 3 Jahren 517 Views
B
brave_snoopy Themenstarter:in
99 Beiträge seit 2011
vor 3 Jahren
Warum liefert Rest Service beim POST keine Daten?

Hallo,

ich möchte aus meiner WinForms Anwendung heraus einen WebService mittels POST antriggern. Der Webservice ist ein Jenkins Server. Das funktioniert auch einwandfrei. Der Job wird gestartet.
Allerdings bekomme ich keinen Response zurück.

Ich hab mir eine Helper Klasse gebaut mit folgender Methode gebaut:


public static async Task<string> Post()
        {

            using (HttpClient client = new HttpClient())
            {
                string authToken = Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes("admin:11be8206410f8"));
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", authToken);
                var nullcontent = new StringContent("");
                using (HttpResponseMessage res = await client.PostAsync("http://wi216ps1:8080/job/TestPS/buildWithParameters?samAccountName=test", null))
                {
                    using (HttpContent content = res.Content)
                    {
                        string data = await content.ReadAsStringAsync().ConfigureAwait(false);
                        if (data != null)
                        {
                            return data;
                        }
                    }
                }
            }
            return string.Empty;
        }

Und aufrufen tue ich das ganze über eine button Click Methode:


private async void b_CreateUser_Click(object sender, EventArgs e)
        {

            var response = await RestHelper.Post();
            textBox1.Text = response;
        }

Ich hab es mit einem GET versucht, das klappt. Nur leider beim Post bekomme ich kein Response. Ich vermute es liegt an dem async.

Könnt ihr mir sagen, wie ich das Problem gelöst bekomme?

H
48 Beiträge seit 2020
vor 3 Jahren

es liegt ganz sicher nicht am async

B
brave_snoopy Themenstarter:in
99 Beiträge seit 2011
vor 3 Jahren

es liegt ganz sicher nicht am async

Woran könnte es dann liegen ?

W
955 Beiträge seit 2010
vor 3 Jahren

Na dann schau doch mal mit Postman oder Fiddler ob er überhaupt was sendet.

B
brave_snoopy Themenstarter:in
99 Beiträge seit 2011
vor 3 Jahren

Na dann schau doch mal mit Postman oder Fiddler ob er überhaupt was sendet.

Vielen vielen Dank. So ein verdammter Mist. Der content ist leer. Das Feld was ich suche, steht im Location Header. Den bekomme ich jetzt natürlich ausgegeben.

Der Tipp mit Postman ist Gold wert. Danke.