You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-11-25 22:12:29 +02:00
107 lines
3.4 KiB
Plaintext
Vendored
107 lines
3.4 KiB
Plaintext
Vendored
---
|
|
sidebar_position: 9
|
|
description: Get object size and other functions to work with FTP in the Open Integration Package, a free open-source integration library for 1C:Enterprise 8, OneScript and CLI
|
|
keywords: [1C, 1С, 1С:Enterprise, 1С:Enterprise 8.3, API, Integration, Services, Exchange, OneScript, CLI, FTP]
|
|
---
|
|
|
|
import Tabs from '@theme/Tabs';
|
|
import TabItem from '@theme/TabItem';
|
|
|
|
# Get object size
|
|
Get the size of a file or directory if it exists
|
|
|
|
|
|
|
|
`Function GetObjectSize(Val Connection, Val Path) Export`
|
|
|
|
| Parameter | CLI option | Type | Required | Description |
|
|
|-|-|-|-|-|
|
|
| Connection | --conn | Arbitrary | ✔ | Existing connection or connection configuration |
|
|
| Path | --path | String | ✔ | Path to the object |
|
|
|
|
|
|
Returns: Map Of KeyAndValue - Processing result
|
|
|
|
<br/>
|
|
|
|
:::tip
|
|
FTP Command: `SIZE`
|
|
:::
|
|
<br/>
|
|
|
|
|
|
```bsl title="1C:Enterprise/OneScript code example"
|
|
Host = FunctionParameters["FTP_IP"];
|
|
Port = FunctionParameters["FTP_Port"];
|
|
Login = FunctionParameters["FTP_User"];
|
|
Password = FunctionParameters["FTP_Password"];
|
|
|
|
UseProxy = True;
|
|
FTPS = True;
|
|
|
|
ProxySettings = Undefined;
|
|
TLSSettings = Undefined; // FTPS
|
|
|
|
FTPSettings = OPI_FTP.GetConnectionSettings(Host, Port, Login, Password);
|
|
|
|
If UseProxy Then
|
|
|
|
ProxyType = FunctionParameters["Proxy_Type"]; // http, socks5, socks4
|
|
|
|
ProxyAddress = FunctionParameters["Proxy_IP"];
|
|
ProxyPort = FunctionParameters["Proxy_Port"];
|
|
ProxyLogin = FunctionParameters["Proxy_User"];
|
|
ProxyPassword = FunctionParameters["Proxy_Password"];
|
|
|
|
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.GetObjectSize(Connection, "new_dir/pic_from_disk.png");
|
|
Else
|
|
Result = Connection; // Error of connection
|
|
EndIf;
|
|
```
|
|
|
|
|
|
<Tabs>
|
|
|
|
<TabItem value="bash" label="Bash" default>
|
|
```bash
|
|
# JSON data can also be passed as a path to a .json file
|
|
|
|
oint ftp GetObjectSize \
|
|
--conn "{'set':{'advanced_resolve':true,'domain':'172.33.0.11','login':'bayselonarrend','passive':true,'password':'***','port':'21','read_timeout':'120','write_timeout':'120'},'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'}}" \
|
|
--path "new_dir/big.bin"
|
|
```
|
|
</TabItem>
|
|
|
|
<TabItem value="bat" label="CMD/Bat" default>
|
|
```batch
|
|
:: JSON data can also be passed as a path to a .json file
|
|
|
|
oint ftp GetObjectSize ^
|
|
--conn "{'set':{'advanced_resolve':true,'domain':'172.33.0.11','login':'bayselonarrend','passive':true,'password':'***','port':'21','read_timeout':'120','write_timeout':'120'},'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'}}" ^
|
|
--path "new_dir/big.bin"
|
|
```
|
|
</TabItem>
|
|
</Tabs>
|
|
|
|
|
|
```json title="Result"
|
|
{
|
|
"bytes": 335944730,
|
|
"result": true,
|
|
"close_connection": {
|
|
"result": true
|
|
}
|
|
}
|
|
```
|