我正在编写UWP应用。

我需要将带有JSON的POST请求发送到服务器

这是我的代码,用于下载JSON并写入值:

public async void AllOrders_down()
    {


        string url = "http://api.simplegames.com.ua/index.php/?wc_orders=all_orders";

        var json = await FetchAsync(url);


        List<RootObject> rootObjectData = JsonConvert.DeserializeObject<List<RootObject>>(json);

        OrdersList = new List<RootObject>(rootObjectData);


    }
    public async Task<string> FetchAsync(string url)
    {
        string jsonString;

        using (var httpClient = new System.Net.Http.HttpClient())
        {
            var stream = await httpClient.GetStreamAsync(url);
            StreamReader reader = new StreamReader(stream);
            jsonString = reader.ReadToEnd();
        }

        return jsonString;
    }


我如何需要将此json发送POST请求到服务器?

感谢帮助。

最佳答案

这是我在UWP应用程序中使用的Post请求示例。

using (HttpClient httpClient = new HttpClient())
{
    httpClient.BaseAddress = new Uri(@"http://test.com/");
    httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
    httpClient.DefaultRequestHeaders.AcceptEncoding.Add(new StringWithQualityHeaderValue("utf-8"));

    string endpoint = @"/api/testendpoint";

    try
    {
        HttpContent content = new StringContent(JsonConvert.SerializeObject(yourPocoHere), Encoding.UTF8, "application/json");
        HttpResponseMessage response = await httpClient.PostAsync(endpoint, content);

        if (response.IsSuccessStatusCode)
        {
            string jsonResponse = await response.Content.ReadAsStringAsync();
            //do something with json response here
        }
    }
    catch (Exception)
    {
        //Could not connect to server
        //Use more specific exception handling, this is just an example
    }
}

关于c# - POST请求UWP,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40489291/

10-12 14:16