1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-11-29 22:27:42 +02:00
Files
OpenIntegrations/docs/ru/md/HTTP-client/Settings/Split-arrays-in-url.mdx
Vitaly the Alpaca (bot) 408473f4ec Main build (Jenkins)
2025-06-29 14:35:33 +03:00

81 lines
4.0 KiB
Plaintext
Vendored

---
sidebar_position: 5
description: Разделять массивы в URL и другие функции для работы с HTTP-клиент в Открытом пакете интеграций - бесплатной open-source библиотеке интеграций для 1С:Предприятие 8, OneScript и CLI
keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3, API, Интеграция, Сервисы, Обмен, OneScript, CLI, HTTP-клиент]
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Разделять массивы в URL
Определяет представление массивов в параметрах URL: как цельный JSON массив или отдельные параметры для каждого элемента
`Функция РазделятьМассивыВURL(Знач Флаг, Знач КвадратныеСкобки = Неопределено) Экспорт`
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|-|-|-|-|-|
| Флаг | - | Булево | ✔ | Признак деления массива на отдельные параметры URL |
| КвадратныеСкобки | - | Булево | ✖ | Добавлять к ключам пустые скобки в стиле PHP (key[]=value), если Флаг = Истина |
Возвращаемое значение: ОбработкаОбъект.OPI_HTTPКлиент - Этот же объект обработки
<br/>
:::tip
По умолчанию массивы интерпретируются как единый параметр с JSON массивом в значении
По умолчанию квадратные скобки к ключам параметров при разделении массива не устанавливаются
:::
:::caution
**NOCLI:** данный метод недоступен для использования в CLI версии
:::
<br/>
```bsl title="Пример использования для 1С:Предприятие/OneScript"
URL = "https://httpbin.org";
URL = URL + "/get";
ПараметрМассив = Новый Массив;
ПараметрМассив.Добавить("val1");
ПараметрМассив.Добавить("val2");
ПараметрМассив.Добавить("val3");
СтруктураПараметров = Новый Структура("arrayfield", ПараметрМассив);
Разделение = OPI_ЗапросыHTTP.НовыйЗапрос()
.Инициализировать("https://example.com/page")
.УстановитьПараметрыURL(СтруктураПараметров)
.РазделятьМассивыВURL(Истина) // <---
.ОбработатьЗапрос("GET", Ложь)
.ВернутьЗапрос()
.АдресРесурса;
РазделениеPhp = OPI_ЗапросыHTTP.НовыйЗапрос()
.Инициализировать("https://example.com/page")
.УстановитьПараметрыURL(СтруктураПараметров)
.РазделятьМассивыВURL(Истина, Истина) // <---
.ОбработатьЗапрос("GET", Ложь)
.ВернутьЗапрос()
.АдресРесурса;
БезРазделения = OPI_ЗапросыHTTP.НовыйЗапрос()
.Инициализировать("https://example.com/page")
.УстановитьПараметрыURL(СтруктураПараметров)
.ОбработатьЗапрос("GET", Ложь)
.ВернутьЗапрос()
.АдресРесурса;
```
```json title="Результат"
"Без разделения: /page?arrayfield=[val1,val2,val3];\nРазделение: /page?arrayfield=val1&arrayfield=val2&arrayfield=val3\nРазделение (php): /page?arrayfield[]=val1&arrayfield[]=val2&arrayfield[]=val3"
```