You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-12-01 22:29:52 +02:00
124 lines
5.3 KiB
Plaintext
Vendored
124 lines
5.3 KiB
Plaintext
Vendored
---
|
|
sidebar_position: 3
|
|
description: Сохранить файл и другие функции для работы с SFTP в Открытом пакете интеграций - бесплатной open-source библиотеке интеграций для 1С:Предприятие 8, OneScript и CLI
|
|
keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3, API, Интеграция, Сервисы, Обмен, OneScript, CLI, SFTP]
|
|
---
|
|
|
|
import Tabs from '@theme/Tabs';
|
|
import TabItem from '@theme/TabItem';
|
|
|
|
# Сохранить файл
|
|
Сохраняет файл с сервера по указанному пути
|
|
|
|
|
|
|
|
`Функция СохранитьФайл(Знач Соединение, Знач Путь, Знач ИмяФайла) Экспорт`
|
|
|
|
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|
|
|-|-|-|-|-|
|
|
| Соединение | --conn | Произвольный | ✔ | Существующее соединение или конфигурация соединения |
|
|
| Путь | --path | Строка | ✔ | Путь файла на сервере |
|
|
| ИмяФайла | --file | Строка | ✔ | Путь для сохранения файла на диске |
|
|
|
|
|
|
Возвращаемое значение: Соответствие Из КлючИЗначение - Результат обработки
|
|
|
|
<br/>
|
|
|
|
|
|
|
|
```bsl title="Пример использования для 1С:Предприятие/OneScript"
|
|
Хост = "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.ЭтоКоннектор(Соединение) Тогда
|
|
|
|
Путь = "pic_from_disk.png";
|
|
ИмяФайла = ПолучитьИмяВременногоФайла("bin");
|
|
|
|
Результат = OPI_SFTP.СохранитьФайл(Соединение, Путь, ИмяФайла);
|
|
|
|
Иначе
|
|
Результат = Соединение; // Ошибка соединения
|
|
КонецЕсли;
|
|
```
|
|
|
|
|
|
<Tabs>
|
|
|
|
<TabItem value="bash" label="Bash" default>
|
|
```bash
|
|
# 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/e4o5q2pq.ckf.tmp','username':'bayselonarrend'}}" \
|
|
--path "pic_from_disk.png" \
|
|
--file "/tmp/xmb0y3jo.35s.bin"
|
|
```
|
|
</TabItem>
|
|
|
|
<TabItem value="bat" label="CMD/Bat" default>
|
|
```batch
|
|
:: 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/e4o5q2pq.ckf.tmp','username':'bayselonarrend'}}" ^
|
|
--path "pic_from_disk.png" ^
|
|
--file "/tmp/xmb0y3jo.35s.bin"
|
|
```
|
|
</TabItem>
|
|
</Tabs>
|
|
|
|
|
|
```json title="Результат"
|
|
{
|
|
"bytes": 2114023,
|
|
"filepath": "/tmp/awq5c5ph.vae.bin",
|
|
"result": true,
|
|
"close_connection": {
|
|
"result": true
|
|
}
|
|
}
|
|
```
|