第二次调用C#HttpClient Bad Request

时间:2016-03-09 04:32:58

标签: c# asp.net httpclient dotnet-httpclient

我发现下面的代码在任何第二个httpclient请求中,我总是得到400个错误请求。

我可以确认API调用实际工作并返回200 - 所以如果我翻转它们,第一个调用将返回200秒调用,400。

我无法弄清楚为什么会这样。

 using (HttpClient client = new HttpClient())
        {
            client.BaseAddress = new Uri(BaseUrl);
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

            HttpResponseMessage blah = await client.GetAsync("api/subscriptions?account=eclipse&application=Sample");
            HttpResponseMessage dfds = await client.GetAsync("api/subscriptions?account=eclipse");
...
}

1 个答案:

答案 0 :(得分:1)

如果没有看到你想要调用的控制器功能,很难说清楚。可能发生的事情是REST服务在服务器上遇到异常并且正在丢弃400.

该服务使用哪种Web服务器?也许它有某种同时请求阻止。你可以尝试不使用异步。

我要做的是打开Fiddler(http://www.telerik.com/fiddler)并查看网络流量。查看来自Web服务器的响应,并查看是否存在任何异常数据。