Заметки
Как выводить элементы смарт-процесса с другого портала
Как выводить элементы смарт-процесса с другого портала: iframe, REST, OAuth, безопасность, CORS.
Как выводить элементы смарт-процесса с другого портала: iframe, REST, OAuth, безопасность, CORS.
Схема
Порталы не читают данные друг друга напрямую.
Нужен серверный слой: он авторизуется на другом портале, получает элементы через REST, нормализует данные и отдаёт их приложению.
Безопасность
Не храните OAuth-токены во фронтенде.
Токены второго портала должны жить на сервере. Иначе пользователь увидит их в DevTools.
Права двух порталов не объединяются автоматически, поэтому доступ нужно проверять отдельно.
iframe и CORS
iframe редко решает задачу полностью.
Даже если страницу удаётся встроить, остаются авторизация, ограничения встраивания и UX. Для рабочих списков лучше рисовать свой интерфейс.
Минимальный пример
Пример показывает только базовую форму вызова. На реальном портале замените ID и имена полей на свои.
BX24.callMethod(
'crm.item.list',
{
entityTypeId: 178,
select: ['id', 'title', 'assignedById'],
order: { id: 'desc' },
},
function (result) {
console.log(result.data().items);
}
);