是否有可能在WinRT中同时发送两个以上的HTTP请求? 我试图从服务器加载多个JSON文件和HttpWebRequest的失败,第二个电话后作出回应。 下面是说明了这一个示例代码段:
protected async override void OnNavigatedTo(NavigationEventArgs e)
{
const string url = "http://www.bom.gov.au/fwo/IDV60901/IDV60901.94868.json";
const int iterations = 3;
var tasks = new List<Task>();
var ticks = DateTime.Now.Ticks;
for (var i = 0; i < iterations; i++)
{
// Create unique URL by appending a generated number.
var uniqueUrl = string.Format("{0}?v={1}", url, (i + ticks));
// Create the request.
var request = WebRequest.CreateHttp(uniqueUrl);
// Create the async task and store it for later.
var task = request.GetResponseAsync();
tasks.Add(task);
}
// Await all tasks in collection.
await Task.WhenAll(tasks);
Debugger.Break(); // <----- This will never break when iterations > 2
}
将这个代码在空白MainPage.xaml.cs中和玩的迭代值。 如果你把它设置为2,那么它的工作原理。 任何超过,它会失败。
注 ::这个测试时,不要使用Fiddler。 提琴手做一些有趣的事情,它可以让所有这些连接经过。 我不知道该怎么也不知道为什么。 你可以自己进行测试。 如果你运行上面小提琴手开放,那么成功的代码。
注 ::这不是真正的代码。 我只用这个例子来说明这个问题。