Инициализировать библиотеку BX24.init
Выберите инструмент для разработки с AI-агентом:
- используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
- используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
BX24.init(someCallback: function): void;
Функция BX24.init регистрирует обработчик события «библиотека готова к работе» и выполняет его, как только библиотека получит данные от Битрикс24.
При инициализации библиотека запрашивает у родительской страницы данные, без которых приложение не может работать:
- адрес Битрикс24 и язык интерфейса
- данные авторизации
- права текущего пользователя
- настройки приложения
- параметры встройки
Пока эти данные не получены, часть возможностей библиотеки не работает: BX24.getAuth возвращает false, а BX24.isAdmin — false независимо от реальных прав. Поэтому работу с настройками, правами и запросами к Битрикс24 выполняют внутри обработчика BX24.init.
Функция работает только внутри фрейма приложения и только при подключенной библиотеке BX24.js — как ее подключить, описывает обзор библиотеки. Собственный scope функции не нужен.
Параметры функции
Обязательные параметры отмечены *
|
Название |
Описание |
|
someCallback* |
Обработчик, который выполнится после готовности библиотеки. Вызывается без параметров, возвращаемое им значение библиотека игнорирует |
Порядок выполнения обработчиков
Библиотека выполняет обработчики по таким правилам:
- обработчиков может быть несколько: каждый вызов
BX24.initдобавляет свой, все они выполняются в порядке регистрации - если библиотека уже готова, обработчик выполняется асинхронно — библиотека откладывает его таймером, а не вызывает сразу
- обработчики при первом запуске приложения у пользователя ждут цепочку BX24.install: она завершается вызовом BX24.installFinish
- вызовы BX24.callMethod до инициализации не теряются: библиотека откладывает их и выполняет после готовности
Готовность библиотеки — не то же самое, что готовность DOM-структуры страницы: за нее отвечают BX24.ready и BX24.isReady.
Пример кода
Как использовать примеры в документации
<script src="//api.bitrix24.tech/api/v1/"></script>
<script>
BX24.init(function() {
console.log('BX24 initialized successfully.');
BX24.callMethod('user.current', {}, function(result) {
if (result.error()) {
console.error('Error fetching user data: ', result.error());
} else {
console.log('User data: ', result.data());
}
});
});
</script>
Обработка ответа
Функция не возвращает данные (void). О результате говорит запуск обработчика.
Обработка ошибок
Своих кодов ошибок у функции нет: она не обращается к REST API, а ждет данные от родительской страницы Битрикс24.
|
Ситуация |
Что происходит |
Что делать |
|
Страница открыта не во фрейме приложения — например, напрямую в браузере или на своем сайте |
Библиотека не инициализируется: при загрузке она выбрасывает исключение |
Открывать страницу как приложение Битрикс24 |
|
Библиотека не подключена |
Выполнение прерывается с ошибкой |
Подключить библиотеку до первого вызова, подробнее — обзор библиотеки |
|
В |
До инициализации пустое значение библиотека игнорирует молча, после — вызов без обработчика дает ошибку в консоли. Значение другого типа она принимает как обработчик, и при запуске в консоли появляется ошибка |
Передавать функцию |
Продолжите изучение
- Инициализация и авторизация в BX24.js: обзор функций
- Обработать первый запуск приложения у пользователя BX24.install
- Оповестить об окончании работы инсталлятора BX24.installFinish
- Получить данные для OAuth 2.0 BX24.getAuth
- Принудительно обновить данные авторизации BX24.refreshAuth
- Вызвать метод Битрикс24 BX24.callMethod
- Установить обработчик готовности DOM-структуры BX24.ready