Перейти к основному содержимому

Загрузить файл

Загружает файл с диска или двоичные данные на сервер

Функция ЗагрузитьФайл(Знач Соединение, Знач Файл, Знач Путь) Экспорт

ПараметрCLI опцияТипОбяз.Назначение
Соединение--connПроизвольныйСуществующее соединение или конфигурация соединения
Файл--fileСтрока, ДвоичныеДанныеФайл на диске или данные файла
Путь--pathСтрокаПуть сохранения файла на сервере

Возвращаемое значение: Соответствие Из КлючИЗначение - Результат обработки


подсказка

Параметры с типом данных Двоичные данные могут принимать также пути к файлам на диске и URL


Пример использования для 1С:Предприятие/OneScript
    КартинкаПуть = "C:\pic.png";

КартинкаДД = Новый ДвоичныеДанные(Картинка);

Хост = "172.33.0.13";
Порт = "2222";

ИспользоватьПрокси = Истина;
НастройкиПрокси = Неопределено;
ВидАвторизации = "По логину и паролю";

Если ВидАвторизации = "По логину и паролю" Тогда

Логин = "bayselonarrend";
Пароль = "12we...";

НастройкиSFTP = OPI_SFTP.ПолучитьНастройкиЛогинПароль(Хост, Порт, Логин, Пароль);

ИначеЕсли ВидАвторизации = "По ключу" Тогда

Логин = "bayselonarrend";
ПриватныйКлюч = "./ssh_key";
ПубличныйКлюч = "./ssh_key.pub";

НастройкиSFTP = OPI_SFTP.ПолучитьНастройкиПриватныйКлюч(Хост, Порт, Логин, ПриватныйКлюч, ПубличныйКлюч);

Иначе

Логин = "bayselonarrend";
НастройкиSFTP = OPI_SFTP.ПолучитьНастройкиЧерезАгента(Хост, Порт, Логин);

КонецЕсли;

Если ИспользоватьПрокси Тогда

ТипПрокси = "http"; // http, socks5, socks4

АдресПрокси = "127.0.0.1";
ПортПрокси = "8071";
ЛогинПрокси = "proxyuser";
ПарольПрокси = "12we...";

НастройкиПрокси = OPI_SFTP.ПолучитьНастройкиПрокси(АдресПрокси, ПортПрокси, ТипПрокси, ЛогинПрокси, ПарольПрокси);

КонецЕсли;

Соединение = OPI_SFTP.ОткрытьСоединение(НастройкиSFTP, НастройкиПрокси);

Если OPI_SFTP.ЭтоКоннектор(Соединение) Тогда

Результат = OPI_SFTP.ЗагрузитьФайл(Соединение, Картинка, "pic_from_disk.png");
Результат2 = OPI_SFTP.ЗагрузитьФайл(Соединение, КартинкаДД, "files_folder/pic_from_binary.png");

Иначе
Результат = Соединение; // Ошибка соединения
КонецЕсли;
    # JSON данные также могут быть переданы как путь к файлу .json

oint sftp ЗагрузитьФайл \
--conn "{'proxy':{'login':'proxyuser','password':'***','port':'8071','proxy_type':'http','server':'127.0.0.1'},'set':{'auth_type':'private_key','host':'172.33.0.13','key_path':'***','passphrase':null,'password':null,'port':'2222','pub_path':'/tmp/o5vavrx0.3t5.tmp','username':'bayselonarrend'}}" \
--file "/tmp/4wiky2if.5pn" \
--path "files_folder/pic_from_binary.png"
Результат
{
"bytes": 2114023,
"result": true
}