- Опубликовано:
- 06.08.2018
- Обновлено:
- 14.07.2026
- Версия:
- 4.19.0
- Установлено:
- Более 1000 раз
- Подходящие редакции:
- Первый сайт, Старт, Стандарт, Малый бизнес, Бизнес, Интернет-магазин + CRM, Корпоративный портал, Энтерпрайз
- Адаптивность:
- Да
- Поддержка Композита:
- Да
- Совместимо с Сайты24
- Нет
- Совместимо с PHP 8.1
Видео-обзор: https://vk.com/video
Модуль помогает организовать программный интерфейс для внешних и внутренних приложений.
| С 01.01.2020 запускаем программу поддержки общественных организаций, некоммерческих фондов, сообществ волонтёров, то есть всех тех компаний, которые работают на благо общества. В рамках данной программы уже поддержали проект Автоволонтёров России: https://x-15.ru Подробнее о программе вы можете узнать у наших операторов, по любым доступным каналам связи. |
| Один из фактов о модуле: на основе данного модуля, студенты изучают работу REST API, а также реализуют собственные интерфейсы, которые позже сдают в виде курсовых и даже дипломных работ. |
| Один из часто задаваемых вопросов: может ли модуль загружать на сайт остатки по товарам с сайта поставщика? Нет, модуль не может импортировать остатки по товарам с сайта поставщика. Модуль помогает реализовать API на вашем сайте, чтобы сторонние клиенты (другие сайты, мобильные приложения, и так далее) могли отдавать или забирать данные с вашего сайта. |
Ранее нами уже был разработан и опубликован на бесплатной основе модуль REST API. Данный модуль хорошо себя зарекомендовал для решения задач межплатформенных обменов, показателями этого факта являются отзывы и количество скачиваний. Со временем стало появляться множество запросов по доработке модуля, и как следствие, мы приняли решение о написании новой, усовершенствованной версии уже полюбившегося модуля.
В данной версии мы учли все недостатки и пожелания из прошлой версии, очень хорошо оптимизировали ядро модуля, теперь оно работает гораздо быстрее, и на этом мы делаем свой основной упор.
Помимо переработки ядра немаловажным фактором является и добавление карты роутов. За счет карты появилась возможность очень гибко настраивать параметры для любого отдельного роута.
Что получите от приобретения модуля:
- Уменьшение стоимости разработки API за счет сокращения времени на программирование интерфейса.
- Поддержка от профессионалов, имеющих большой опыт создания API.
- Готовый RESTful API интерфейс, с библиотекой встроенных методов, а также с возможностью создавать собственные, кастомные методы, реализующие любую, необходимую логику. И конечно, с автогенерируемой документацией, которую можно предоставить сторонним разработчикам.
Возможности:
- Использование API 1С-Битрикс через нативный рест-провайдер.
- Загрузка интерфейса до запуска публичной части сайта.
- Отсутствие необходимости в дополнительной настройке платформы.
- Виртуальный путь к интерфейсу, в том числе и от корня домена (https://domain.com/ или https://domain.com/{api}/ или https://api.domain.com/).
- Настройка доступа в административной части сайта к разделам модуля на уровне групп пользователей.
- Автогенерируемая документация в административном разделе.
- Автогенерируемая документация для клиента в JSON-формате.- Поддержка карт роутов.
- Создание произвольных роутов (/{api}/user/, /{api}/user/get/, /{api}/user/v1/, ... ).
- Установка собственных контроллеров для роутов (классы, внешние классы, php-файлы).
- Настройка уровня доступа к роутам.
- Валидация параметров входящего запроса.
- Авторизация по логину и паролю для конкретного роута.
- Авторизация по токену для конкретного роута.- Генерация токенов для пользователей.
- Поддержка списка "белых" логинов/токенов для конкретного роута.
- Проверка групп пользователя при авторизации для конкретного роута.
- Возможность ограничения количества запросов в единицу времени на уровне групп пользователей.
- Возможность передачи дополнительных заголовков при ответе.
- Возможность деактивировать конкретный роут.
- Кэширование входящих запросов и ответов средствами платформы.
- Журналирование запросов и ответов.
- Настройка CORS из административной части сайта.
- Наличие функций упрощающих разработку интерфейса.
- Наличие библиотеки встроенных роутов ускоряющих разработку интерфейса.- Наличие примеров и руководств для разработчика.
Более подробно все возможности, функции и примеры описаны в документации, которая имеется в модуле.
Чем данный модуль отличается от REST API Битрикса?
1.1. В REST API Битрикса мало гибкости, есть необходимость использовать именно предоставленные роуты. Данный модуль позволяет формировать свои роуты, писать свою логику при обработке запроса, то есть предоставляет больше гибкости;
1.2. REST API Битрикса реализовано не совсем согласно архитектурному стилю REST;
1.3. В REST API Битрикса, при обработке запроса порой происходят «лишние» действия, которые могут создавать дополнительную задержку при ответе клиенту, может это и не сильно критично, но API должно быть настолько быстрым, насколько это возможно;
1.4. API не всегда должно быть доступно всем, иногда оно должно быть уникально (роуты, параметры, ... ) для проекта, но за счет общего стиля REST API Битрикса, документация которого в общем доступе, эта уникальность нарушается и создает дополнительную лайзеку для атак на сайт. Используя данный модуль, можно указывать собственное имя роута, где будет работать API. Например: domain.com/rest/ или domain.com/api/, или domain.com/rest-api/, или api.domain.com, и так далее;
1.5. В REST API Битрикса нет возможности как-то управлять интерфейсом из административной части сайта;
1.6. В REST API Битрикса нет возможности регулировать доступы к роутам, ограничивать доступ по количеству запросов от клиента, журналировать запросы и ответы, и некоторые другие функции.
1.7. На текущий момент, в REST API Битрикса, например, нет возможности создать заказ через API. Используя данный модуль вы можете реализовать этот функционал.
1.8 В целом, данный модуль пишется и развивается на основе запросов пользователей, но REST API Битрикса пишется на усмотрение Битрикса. Плюс это или минус - решать вам.
Примечание:
- Минимальная версия PHP >= 8.1 (согласно требованиям платформы). Использование более ранней версии возможно, но крайне не рекомендуется, в виду возникновения ошибок.
- Обязательно наличие файла для обработки 404 ошибки (обычно имеется в корне сайта - 404.php) со всеми "директивами" 1С-Битрикса.
- Если используется веб-сервер Apache: обязательно прописать ErrorDocument 404 /404.php в .htaccess, расположенный в корне сайта, или прямо в конфигурационном файле Apache.
- Если используется веб-сервер Nginx: обязательно прописать error_page 404 = /404.php?$query_string; в секцию server конфигурационного файла (обычно nginx.conf).
- Для работы CORS-запросов необходимо чтобы на веб-сервере были разрешены запросы типа OPTIONS.
Спасибо Вам за ознакомление с нашим модулем. Если у Вас имеются какие-либо вопросы/предложения, то мы всегда готовы обсудить их через контакты, указанные в разделе поддержки.
Для наших партнёров готовы предлагать скидки на модуль по индивидуальным условиям.
Для получения подробностей напишите нашему менеджеру через раздел контактов.
31 августа 2018 23:16
Спасибо всё работает
Дополнено 24.10.18 Здравтвуйте ещё раз, отзыв изменил с 1 на 4 т.к. модуль заработал, но пока ещё есть над чем работать. ------------------------------------------- При установке на ЧИСТЫЙ сайт! Вот такая ошибка в админке. [Bitrix\Main\LoaderException] Empty module name (0) E:\Programs\OpenServer\domains\levay.ru\bitrix\modules\main\lib\loader.php:65 #0: Bitrix\Main\Loader::includeModule(NULL) E:\Programs\OpenServer\domains\levay.ru\bitrix\modules\artamonov.rest\admin\menu.php:4 #1: include(string) E:\Programs\OpenServer\domains\levay.ru\bitrix\modules\main\interface\admin_lib.php:918 #2: CAdminMenu->_IncludeMenu(string) E:\Programs\OpenServer\domains\levay.ru\bitrix\modules\main\interface\admin_lib.php:688 #3: CAdminMenu->Init(array) E:\Programs\OpenServer\domains\levay.ru\bitrix\modules\main\interface\desktop.php:6 #4: require(string) E:\Programs\OpenServer\domains\levay.ru\bitrix\admin\index.php:2
1 сентября 2018 16:07
Тимур, здравствуйте!
Спасибо за Ваш отзыв.
Вы не первый, кто использует модуль и такой проблемы не наблюдалось.
Видимо, у Вас какая-то уникальная ситуация. В данном случае, Вам нужно было написать в нашу службу поддержки и мы обязательно решили бы Вашу проблему.
Любую ситуацию без внимания мы не оставляем, поэтому в ближайшее время с Вами свяжется наш сотрудник и поможет решить Вашу проблему.
11 марта 2024 13:45
Отличное решение
Ситуация получилась интересная. Участвовал в переносе проекта от других разработчиков, которые использовали данный модуль для реализации поставленных задач. Необходимо было приобрести модуль для этого проекта. В итоге, когда изучал информацию, понял что данное решение подходит для другого текущего проекта. Как говорится, дайте 2, купил и туда и сюда :) Разработчик выходит на связь, вносит необходимые доработки при необходимости. Решение полностью себя оправдало. Из пожеланий - добавить партнерские скидки и расширить документацию по методам (писал в обсуждениях).
11 марта 2024 13:51
Егор, спасибо за отзыв.
Будем стараться и дальше улучшать качество, функции модуля, и оказываемого сервиса.