[英]HttpClient.getAsync() Out of Memory Exception
我有一個從Web服務獲取大量JSON的函數。 該數據有時可能很大,千兆字節。 我的電話看起來像這樣。
try
{
using (var httpClient = NewHttpClient())
{
var response = httpClient.GetAsync(endpoint).Result;
return response;
}
}
catch(Exception ex)
{
//Do Stuff
}
當數據很大時,這將引發內存不足異常。 我相信這是因為響應消息實際上大於HttpResponseMessage允許的大小。 有沒有辦法一次只獲取部分消息? 我敢肯定它已經完成了,但是我無法用google和/或slashdot找到任何東西。 預先感謝您的建議。
只需獲取流並將其寫入文件,以便以后進行處理,
using (var httpClient = new HttpClient())
{
var stream = await httpClient.GetStreamAsync(url);
stream.CopyToAsync(fileStream)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.