oscript-yadisk icon indicating copy to clipboard operation
oscript-yadisk copied to clipboard

Ошибка при загрузке файла

Open arkuznetsov opened this issue 7 years ago • 5 comments

При загрузке больших файлов вылетают разные ошибки. Закономерность непонятна, разница в размере файлов. При загрузке файла ~ 700 Mb вылетает: ОШИБКА - {Модуль C:\Program Files (x86)\OneScript\lib\yadisk\src\yadisk.os / Ошибка в строке: 171 / Внешнее исключение (System.Net.WebException): The request was aborted: The request was canceled.}

При загрузке файла ~ 4 Gb вылетает: ОШИБКА - {Модуль C:\Program Files (x86)\OneScript\lib\yadisk\src\yadisk.os / Ошибка в строке: 169 / Внешнее исключение (System.Net.WebException): The underlying connection was closed: Unable to connect to the remote server.}

arkuznetsov avatar Jun 27 '17 21:06 arkuznetsov

Подозреваю, что это связано с тем, что скрипт весь файл отправляет одним запросом, а он слишком большой и у C# объекта HttpWebRequest есть какое-то внутреннее ограничение на размер POST/PUT-запросов.

Ошибка возникает при вызове метода Записать(), что позволяет говорить о том, что технически это внутреннее ограничение движка OScript.

Но также это и архитектурная недоработка библиотеки yadisk - API Я.Диска позволяет отправлять большой файл частями, используя Transfer-Encoding: chunked, но я не сделал этого сразу, т.к. на момент создания библиотеки не было методов для разбиения данных на части средствами скрипта, а сейчас я не знаю (не проверял), появились ли они с тех пор.

Пока рекомендую для копирования больших файлов на Я.Диск подключать его как папку, используя возможности WebDav.

kuntashov avatar Jun 28 '17 06:06 kuntashov

@kuntashov вроде бы в 1.0.16 завели нормальную работу с двоичными данными как в 1с. Не все реализовано, но всем, кто тыкал, функциональности пока хватало.

nixel2007 avatar Jun 28 '17 06:06 nixel2007

@nixel2007 спасибо, посмотрю

kuntashov avatar Jun 28 '17 06:06 kuntashov

/all буду рад помощи, особенно в виде PR ;-)

kuntashov avatar Jun 28 '17 06:06 kuntashov

не появились, но были в моих дальних планах

ret-Phoenix avatar Jun 28 '17 07:06 ret-Phoenix