第二次调用 C# HttpClient 错误请求

C# HttpClient Bad Request on second call

我发现在任何第二个 httpclient 请求中,我总是收到以下代码的 400 Bad Request。

我可以确认 API 调用确实有效并且 return 200 - 所以如果我翻转它们,第一个调用将 return 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");
...
}

如果没有看到您尝试调用的控制器函数,则很难判断。可能发生的情况是 REST 服务在服务器上遇到异常并返回 400。

该服务使用的是什么网络服务器?也许它有某种同时请求阻塞。您可以尝试不使用异步。

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