我发送超过120个请求(在多个任务之间) this API(200个对象),我的目标是只获得名字而不触及其余部分。
npm install echarts --save
npm install angular2-echarts --save
我工作,但花费的时间比我预期的要多。我做错了吗?
这是结合结果的功能:
public async Task<List<string>> ZwrocNazwe(string zapytanie)
{
var listaNazw = new List<string>();
var s = await _klientHttp.GetStreamAsync(zapytanie);
using (StreamReader sr = new StreamReader(s))
using (JsonReader reader = new JsonTextReader(sr))
{
reader.SupportMultipleContent = true;
while (reader.Read())
{
if (reader.TokenType != JsonToken.StartObject) continue;
reader.Read();
if (reader.Value.ToString() != "name") continue;
reader.Read();
listaNazw.Add(Convert.ToString(reader.Value));
reader.Skip();
}
}
return listaNazw;
}
有趣的是,自从我开始使用 public async Task<List<string>> ZwrocListePrzedmiotow(List<int> listaId, string sciezka)
{
// Groups ids of items into groups of 200.
var listaZapytan = ZwrocListeZapytan(listaId);
// Makes request per each group to get item info.
var listaZadan = new List<Task<List<string>>>();
foreach (var zapytanie in listaZapytan)
listaZadan.Add(
ZwrocNazwe(sciezka + zapytanie));
// Combines results.
await Task.WhenAll(listaZadan);
var listaPrzedmiotow = new List<string>();
foreach (var zadanie in listaZadan)
listaPrzedmiotow.AddRange(zadanie.Result);
return listaPrzedmiotow;
}
代替GetStreamAsync
后,我等待的时间更长。