Передача массива в параметрах POST из 1С 7.7
Добрый день!
Коллеги помогите, есть ТиС, нужно привязать его к веб сервису сайта emex.ru, доступ получен.
Нужно отправить запрос с указанием таких параметров:
login
password
setInmotionStateItems
,последний параметр имеет несколько свойств: GlobalID, Count, State.
Как передать эти свойства?
Пробовал через запятую, в скобках, в фигурных скобках - не канает, как правильно передать эти свойства?
Коллеги помогите, есть ТиС, нужно привязать его к веб сервису сайта emex.ru, доступ получен.
Нужно отправить запрос с указанием таких параметров:
login
password
setInmotionStateItems
,последний параметр имеет несколько свойств: GlobalID, Count, State.
Как передать эти свойства?
Процедура Сформировать()
запрос = "login=1234&password=56789&setInmotionStateItems=106931797,1,RecReg";
WinHttp=СоздатьОбъект("WinHttp.WinHttpRequest.5.1");
WinHttp.Option(2,"utf-8");
WinHttp.Open("POST","http://ws.emex.ru/EmExInmotion.asmx/SetInmotionStateByGlobalId", "0");
WinHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
WinHttp.Send(Запрос);
Ответ = WinHttp.ResponseText;
Форма.ТОтвет.Заголовок(Ответ);
Сообщить(Запрос);
КонецПроцедуры
ПоказатьПробовал через запятую, в скобках, в фигурных скобках - не канает, как правильно передать эти свойства?
По теме из базы знаний
- Использование сборок .NET в 1С 7. и 8.x. Создание внешних Компонент.
- JSON: Туда и Обратно
- HTTP сервер, HTTP асинхронный клиент, клиент ГИС МТ "Честный знак": внешние компоненты для 1С 7.7
- Эффективное управление фоновыми заданиями и коммуникация сеансов сервера с Фоном с помощью Структуры обмена (ноу-хау) + Бонус: Альтернативный вариант через Хранилище настроек
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
через ; тоже не получается.
Пробовал передавать такую строку
Как еще можно попробовать передать несколько значений в одном параметре?
Пробовал передавать такую строку
login=44534&password=323423434&setInmotionStateItems=106931795;1;RecReg
Как еще можно попробовать передать несколько значений в одном параметре?
так, например:
&setInmotionStateItems[0]=106931795&setInmotionStateItems[1]=1&setInmotionStateItems[2]=RecReg
&setInmotionStateItems[0]=106931795&setInmotionStateItems[1]=1&setInmotionStateItems[2]=RecReg
'IBLOCK_TYPE_ID': 'bitrix_processes',
IBLOCK_ID': '8',
Я передаю из 8.3 таким образом:
.
Все отрабатывает нормально,
но понадобилось передать массив
Пример:
var params = {
'IBLOCK_TYPE_ID': 'lists_socnet',
'IBLOCK_CODE': 'rest_1',
'ELEMENT_CODE': 'element_1',
'LIST_ELEMENT_URL': '#list_id#/element/#section_id#/#element_id#/',
'FIELDS': {
'NAME': 'Test element',
'PROPERTY_62': 'Text string',
'PROPERTY_63': {
'0': '7',
'1': '9',
'2': '10'
}
}
};
Нужно передать массив FIELDS с полями NAME = "Имя элемента".
Кто нибудь сталкивался? Как можно решить вопрос?
IBLOCK_ID': '8',
Я передаю из 8.3 таким образом:
ПараметрыПОСТ = "IBLOCK_TYPE_ID=bitrix_processes&IBLOCK_ID=8";
WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1");
WinHttp.Option(2,"utf-8");
WinHttp.Open("POST",urlHook, Ложь);
WinHttp.SetRequestHeader("Accept-Language", "ru");
WinHttp.SetRequestHeader("Accept-Charset","utf-8");
WinHttp.setRequestHeader("Content-Language", "ru");
WinHttp.setRequestHeader("Content-Charset", "utf-8");
WinHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8");
WinHttp.Send(ПараметрыПОСТ);
ТекстОтветаJSON = WinHttp.ResponseText();
ПоказатьВсе отрабатывает нормально,
но понадобилось передать массив
Пример:
var params = {
'IBLOCK_TYPE_ID': 'lists_socnet',
'IBLOCK_CODE': 'rest_1',
'ELEMENT_CODE': 'element_1',
'LIST_ELEMENT_URL': '#list_id#/element/#section_id#/#element_id#/',
'FIELDS': {
'NAME': 'Test element',
'PROPERTY_62': 'Text string',
'PROPERTY_63': {
'0': '7',
'1': '9',
'2': '10'
}
}
};
Нужно передать массив FIELDS с полями NAME = "Имя элемента".
Кто нибудь сталкивался? Как можно решить вопрос?
Внимание! Тема сдана в архив
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот