Wie benutze ich den HttpClient PostAsync Parameter richtig?

So, ich bin arbeiten, das schreiben einer extension-Klasse für mein Projekt mit HttpClient da bin ich bewegt über den von HttpWebRequest.

Wenn du die POST-Anforderung, wie sende ich einen normalen string als parameter? Kein json oder alles nur ein einfacher string.

Und das ist, was es sieht aus wie bisher.

static class HttpClientExtension
    {
        static HttpClient client = new HttpClient();
        public static string GetHttpResponse(string URL)
        {
            string fail = "Fail";
            client.BaseAddress = new Uri(URL);
            HttpResponseMessage Response = client.GetAsync(URL).GetAwaiter().GetResult();
            if (Response.IsSuccessStatusCode)
                return Response.Content.ReadAsStringAsync().GetAwaiter().GetResult();
            else
                return fail;
        }

        public static string PostRequest(string URI, string PostParams)
        {
            client.PostAsync(URI, new StringContent(PostParams));
            HttpResponseMessage response = client.GetAsync(URI).GetAwaiter().GetResult();
            string content = response.Content.ReadAsStringAsync().GetAwaiter().GetResult();
            return content;
        }
    }

Wenn Sie sich dies anschauen, wie

client.PostAsync(URI, new StringContent(PostParams));

Können Sie sehen, dass ich habe nur versucht, die Schaffung neuer StringContent und übergeben Sie eine Zeichenfolge in es und die Antwort zurückgegeben 404-Seite nicht gefunden.
Wie gehe ich richtig mit der Post.Async(); sende ich einen string oder byte-array? Denn mit HttpWebRequest Sie es tun würde, wie dies

public static void SetPost(this HttpWebRequest request, string postdata)
        {
            request.Method = "POST";
            byte[] bytes = Encoding.UTF8.GetBytes(postdata);

            using (Stream requestStream = request.GetRequestStream())
                requestStream.Write(bytes, 0, bytes.Length);
        }
InformationsquelleAutor Aleks Slade | 2017-12-22
Schreibe einen Kommentar