Skip to main content

Upload file

Uploads a file from disk or binary data to the FTP server

Function UploadFile(Val Connection, Val File, Val Path) Export

ParameterCLI optionTypeRequiredDescription
Connection--connArbitraryExisting connection or connection configuration
File--fileString, BinaryDataFile on disk or file data
Path--pathStringPath to save file on server

Returns: Map Of KeyAndValue - Processing result


tip

FTP Command: STOR

Parameters with Binary data type can also accept file paths on disk and URLs


1C:Enterprise/OneScript code example
    ImagePath = "C:\pic.png";

ImageDD = New BinaryData(Image);

Host = "172.33.0.10";
Port = "21";
Login = "bayselonarrend";
Password = "12we...";

UseProxy = True;
FTPS = True;

ProxySettings = Undefined;
TLSSettings = Undefined; // FTPS

FTPSettings = OPI_FTP.GetConnectionSettings(Host, Port, Login, Password, , 1000, 1000);

If UseProxy Then

ProxyType = "http"; // http, socks5, socks4

ProxyAddress = "127.0.0.1";
ProxyPort = "8071";
ProxyLogin = "proxyuser";
ProxyPassword = "12we...";

ProxySettings = OPI_FTP.GetProxySettings(ProxyAddress, ProxyPort, ProxyType, ProxyLogin, ProxyPassword);

EndIf;

If FTPS Then
TLSSettings = OPI_FTP.GetTLSSettings(True);
EndIf;

Connection = OPI_FTP.CreateConnection(FTPSettings, ProxySettings, TLSSettings);

If OPI_FTP.IsConnector(Connection) Then

Result = OPI_FTP.UploadFile(Connection, Image, "new_dir/pic_from_disk.png");
Result2 = OPI_FTP.UploadFile(Connection, ImageDD, "pic_from_binary.png");

Else
Result = Connection; // Error of connection
EndIf;
    oint ftp UploadFile \
--conn "{'set':{'advanced_resolve':true,'domain':'172.33.0.11','login':'bayselonarrend','passive':true,'password':'***','port':'21','read_timeout':'1000','write_timeout':'1000'},'tls':{'accept_invalid_certs':true,'ca_cert_path':null,'use_tls':true},'proxy':{'login':'proxyuser','password':'***','port':'1080','proxy_type':'socks5','server':'127.0.0.1'}}" \
--file "/tmp/qfsmclll.dky" \
--path "new_dir/big.bin"
Result
{
"bytes": 2114023,
"result": true,
"close_connection": {
"result": true
}
}