У меня есть консольное приложение «ASP.NET», и я использую клиент «RestSharp» для Dropbox.C# Dropbox RestSharp скачать файл в поток
Я использую этот код для загрузки файла:
var baseUrl = "https://content.dropboxapi.com";
var client = new RestClient(baseUrl);
client.Authenticator = OAuth1Authenticator.ForRequestToken(mc_apiKey, mc_appsecret);
RestRequest request = new RestRequest(string.Format("/{0}/files/auto", mc_version), Method.GET);
client.Authenticator = OAuth1Authenticator.ForProtectedResource(mc_apiKey, mc_appsecret, accessToken.Token, accessToken.Secret);
request.AddParameter("path", path);
var responseAccount = client.Execute(request);
var fileString = responseAccount.Content;
byte[] b1 = System.Text.Encoding.UTF8.GetBytes (fileString);
Когда вызов client.Execute(request)
весь файл загружается в память, поэтому, когда у меня есть очень largefile в Dropbox программа даст сбой.
Мне нужно передать файл в поток без использования client.DownloadData(request).SaveAs(path)
для загрузки на локальное хранилище.
Мне нужно иметь возможность передавать файл кусками.
Ну, этот ответ использует другой подход для создания HTTP-запроса - не RestSharp, как указано в заголовке вопроса и теге. Это не прямой ответ на вопрос. Просто обходной путь. –