c#-在UWP(W10)中使用HttpClient发出POST请求

我正在使用通用Windows Plataform制作应用程序,我想问一下如何使用httpclient将(​​id = 1)之类的数据发布到服务器.
我知道互联网上有一些教程,但是其中许多教程是针对Windows 8.1的,不能在10中使用.

解决方法:

如果要在UWP中处理HTTP请求,则需要一个Web服务来支持它.如果您在解决方案中创建一个Web API项目,则可以使用控制器内部的操作来处理POST请求.

有关Web API的更多信息:click here

首先,您需要从NuGet安装Web API .net客户端,以处理来自Web API的HTTP请求.

在您的UWP项目中,然后可以使用以下方法创建数据传输类:

const string ServerUrl = ""; //specify your server url

 public void ClientHeaderInfo(HttpClient client)
 {
        client.BaseAddress = new Uri(ServerUrl);
        client.DefaultRequestHeaders.Clear();
        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
 }

public virtual async Task Post(int id,string url)
    {
        HttpClientHandler handler = new HttpClientHandler { UseDefaultCredentials = true };
        using (var client = new HttpClient(handler))
        {
            ClientHeaderInfo(client);
            try
            {
                await client.PostAsJsonAsync(url, id);

            }
            catch (Exception ex)
            {
                await new MessageDialog(ex.Message).ShowAsync();
            }
        }

    }

现在,您可以在任何需要的地方调用Post方法,并将URL路由到Web API中所需的控制器,以及需要发布的ID.

上一篇:如何在UWP中的Pivot中的Pivot.ItemTemplate中获取控件?


下一篇:C#-UWP NetworkConnectionChanged事件