Я пытаюсь загрузить файл с помощью openstack sdk из файлов rackspace. Если файл уже существует, я хочу использовать заголовок диапазона, чтобы продолжить запись, где он остановился. Согласно их documentation это может быть выполнено. openstack sdk documentation говорит, что я могу установить заголовок диапазона. Вот мой код:OpenStack SDK GetObjectSaveToFile Заголовки
Dictionary<string, string> headers = new Dictionary<string,string>();
if (File.Exists(@"C:\path\to\file.zip"))
{
long iExistLen = 0;
System.IO.FileInfo fINfo =
new System.IO.FileInfo(@"C:\path\to\file.zip");
iExistLen = fINfo.Length;
headers.Add("Range", "bytes="+iExistLen+"-");
}
CloudIdentity cloudIdentity = new CloudIdentity()
{
APIKey = apikey,
Username = username
};
CloudFilesProvider cloudFilesProvider = new CloudFilesProvider(cloudIdentity);
cloudFilesProvider.GetObjectSaveToFile(containerName, @"C:\path\to\", fileName, "file.zip", 65536, headers);
Когда я запускаю это я получаю следующее сообщение об ошибке:
The 'Range' header must be modified using the appropriate property or method.
Любая помощь приветствуется.
Спасибо.
Так как бы вы установили заголовок диапазона с помощью sdk? – dtascher
Попробуйте использовать WebClient, например: WebClient headers = new WebClient(); headers.Headers.Add («Диапазон», «что-то»); Я имею в виду не словарь, потому что в GetObjectSaveToFile на нем находится коллекция пользовательских HTTP-заголовков. –
Итак, нет способа установить заголовок диапазона в SDK? – dtascher