UWP POST请求(如GET)

时间:2018-07-13 07:28:27

标签: post uwp httpclient

我需要从我的UWP应用发送POST请求。 我了解了here

我使用一个共享的HttpClient

 private Windows.Web.Http.HttpClient httpClient;

初始化:

httpClient = new Windows.Web.Http.HttpClient();
var headers = httpClient.DefaultRequestHeaders;

string header = "Chrome/64.0.3282.140";
if (!headers.UserAgent.TryParseAdd(header))
{
    throw new Exception("Invalid header value: " + header);
}

我将此对象用于所有请求

但是当我将其用于POST请求时,它的作用类似于GET请求或POST,但没有参数

Uri requestUri = new Uri("http://some_websit.ru");
Dictionary<string, string> pairs = new Dictionary<string, string>();
pairs.Add("par1", "val1");
pairs.Add("par2", "val2");   
HttpFormUrlEncodedContent formContent = new HttpFormUrlEncodedContent(pairs)
var result = await httpClient.PostAsync(requestUri, formContent);
string resultContent = await result.Content.ReadAsStringAsync();

它忽略了我提供的参数。

我尝试在http://seriyps.ru/postget/处发送POST请求,它可以工作。

1 个答案:

答案 0 :(得分:0)

您的代码没有问题,我已经使用相同的代码在本地进行了测试,只是使用了不同的URL,并且POST请求与传入的参数一起正确发送:

me

我建议您安装Telerik Fiddler 4来查看网络流量并确认确实发送了参数。我使用http://example.com作为此处的示例URL。我怀疑问题可能出在服务器端,而不是您的应用程序,或者服务器期望的参数与发送的参数不同。