httpClient.PostAsync(url、内容)在C#Metro应用程序中不起作用

httpClient.PostAsync(url、内容)在C#Metro应用程序中不起作用,c#,windows,xaml,http-headers,http-post,C#,Windows,Xaml,Http Headers,Http Post,我正在使用HttpClient.PostAsync()方法向我的web服务api发送post请求。 我正在传递api URL地址以及其中的queryString参数。。 但是PostAsync()方法工作不正常,出现错误: 状态代码417预期失败 public override async void SendPostRequest(请求名称reqName,IDictionary参数) { var_client=new System.Net.Http.HttpClient(); _client.B

我正在使用
HttpClient.PostAsync()
方法向我的web服务api发送post请求。 我正在传递api URL地址以及其中的queryString参数。。 但是
PostAsync()
方法工作不正常,出现错误:

状态代码417预期失败

public override async void SendPostRequest(请求名称reqName,IDictionary参数)
{

var_client=new System.Net.Http.HttpClient(); _client.BaseAddress=新Uri(“http://www.example.com/api/v2.0/"); _client.MaxResponseContentBufferSize=256000; 字符串queryString=“?”; 字符串url=reqName.ToString()+“.json”+queryString; 字符串queryStringparam=“”; foreach(参数中的KeyValuePair参数) { queryStringparam+=参数键+“=”+参数值+“&”; } //queryStringparam=name=“abc&age=25&event=browsed&url=www.google.com” var response=await_client.PostAsync(url,新的StringContent(queryStringparam)); if(响应。IsSuccessStatusCode) { }
可能是我在
PostAsync()
方法中以错误的方式传递参数。 请给我您的建议。谢谢。

根据,这可能是由于代理不支持“100继续”预期


作为一种解决方法,请将
ServicePointManager.Expect100Continue
HttpRequestHeaders.ExpectContinue
设置为
false

请尽快给出您的想法/建议。谢谢,您是否尝试过将
ServicePointManager.Expect100Continue
设置为
false
?Wowwww。刚刚由ServicePointManager.Expect100C检查继续false&效果非常好..非常感谢Stephen Cleary..:)var _client=new System.Net.Http.HttpClient();_client.DefaultRequestHeaders.ExpectContinue=false;效果很好!
    public override async void SendPostRequest(REQUEST_NAME reqName, IDictionary<string, object> args)
    {
        var _client = new System.Net.Http.HttpClient();
        _client.BaseAddress = new Uri("http://www.example.com/api/v2.0/");
        _client.MaxResponseContentBufferSize = 256000;
        string queryString = "?";
        string url = reqName.ToString() + ".json" + queryString;

        string queryStringparam = "";
        foreach (KeyValuePair<string, object> param in args)
        {
            queryStringparam += param.Key + "=" + param.Value + "&";
        }

       // queryStringparam=name="abc&age=25&event=browsed&url=www.google.com"

       var response = await _client.PostAsync(url, new StringContent(queryStringparam));
        if (response.IsSuccessStatusCode)
        {

        }