Как известно, лучшее изучение (любого) продукта это чтение исходных кодов:) Поначалу это кажется дикостью и сложностью, но с опытом понимаешь, что это лучшая документация.
Модуль Live API выпущен Денисом Шаромовым уже достаточно давно. А с недавних пор у меня появилась идея реализовать все то же самое, но в онлайне. Так появился этот проект. Который по моим идеям и создал мой незаменимый помощник Юнир.
Встречайте новый проект по поиску по открытым кодам Битрикс — Bitrix API Online. Ну и давайте на нескольких скриншотах посмотрим его возможности.
Зная часть метода, можно найти его через поиск:
Перейдя в конкретный метод, мы видим не только сам код, его расположение, но и все упоминания прочего API любезно пролинкованы. Можно изучать код дальше
Собственно, это две главные функции проекта. Но есть еще одна заначка;) Это возможность поделиться своим кодом с другими (не обязательно публично):
Попробуйте сами! Вот такой будет результат, где тоже (!) подсвечены методы API.
Вот такой вот простой, но полезный проект пишите в комментариях ваши пожелания и замечания.
Алексей Уколов написал: Ну а если как инструмент для всех, то было бы полезно. Уж понятно, не с первой версии, но 12 была бы полезна.
Алексей, а как решить проблему хакеров? Поясню - вышел апдейт "усиление безопасности главного модуля", его поставили и забыли. Через год в глубинке появляется хакер Х, который начинает читать апдейты Битрикса. Ага - что-то там усилили. Но что? В данный момент для него это останется загадкой, так как найти версию до / после не реально. А если мы дадим ему в руки такой инструмент - нам всем конец
Да, наверняка есть товарищи хакеры, кто это коллекционирует постоянно, но на данный момент риски минимальны, и с единицами бороться легче. Да и это уже серьезные товарищи, а пример выше привлечет еще и школьников.
Мы сделали ссылку на доки хитро - просто через имя метода формируем но блин, тут Битрикс вставил палки в колеса - есть методы, где ссылка формируется с примесью случайной строки (нафига - непонятно). Поэтому походу только вручную проходиться по всей базе и ставить ссылки. Это пока не реально но я еще буду думать как решить вопрос.
Но в 70% случаев ссылка все же правильная (ну и там хоть слева в дереве класс правильный открывается, уже хорошо ).
Долганин Антон написал: тут Битрикс вставил палки в колеса - есть методы, где ссылка формируется с примесью случайной строки
Можно парсить выдачу отсюда по мере необходимости (при хите на страницу метода) и кешировать полученную ссылку
Уникальная ссылка больше никому не будет доступна, если вы только ее сами нигде не опубликуете.
Публиковать её даже не обязательно, поисковики узнать о ней могут и другими способами. История с SMS на сайте Мегафона, наверное, всем известна. Возможно имеет смысл разделять такие ссылки на публичные и не публичные. И при этом исключать последние из индексации через <met a name="robots" content="noindex">.
Шаромов Денис написал: Антон, маленький фиче-реквест: возле расшаренного кода писать дату и время добавления.
Хорошая идейка. Почему то твой коммент навел на мысль на обратную пролинковку с расшаренными кодами. Например расшарил код (публично), там используются какие-то методы. Так вот - в таких методах выводить блок "примеры использования". Записал в реквесты
Возможно, было бы отлично зафиксировать панель поиска и кнопок вверху при прокрутке, хоть постоянно, для удобства, чтоб не скроллить туда-сюда и кнопку Вверх!
+ селект с модулями можно сделать с иконками модулей, что-то типа такого, так будет еще очень круто и симпатишно!
А вот лично мне не хватает даты последнего изменения кода. То есть, понятно, что на сервисе будет актуальная версия, но не каждый метод или файл меняется, поэтому было бы хорошо знать дату, когда последний раз проводились изменения... например по какому-нибудь MD5 проверять... и выводить его же
А вот хинт для хрома: открываем "Настройки - Поиск - Управление поисковыми системами". Там пишем соответственно: bxapi.ru, b, http://bxapi.ru/?search=%s
После этого в адресной строке пишем "b", потом пробел - и можно искать апи функцию:
Постоев Олег написал: А вот лично мне не хватает даты последнего изменения кода. То есть, понятно, что на сервисе будет актуальная версия, но не каждый метод или файл меняется, поэтому было бы хорошо знать дату, когда последний раз проводились изменения... например по какому-нибудь MD5 проверять... и выводить его же
Подписываюсь. Ещё можно выводить версию редакции модуля. Столкнулся с проблемой неактуальности кода на bxapi.ru, когда разбирался, как добавить свою кнопку в визуальном редакторе - http://bxapi.ru/src/?module_id=filema...iptRuns... вот такого кода уже нет в битриксе 14.5. Для удобства можно было бы добавить вывод пути к файлу в виде хлебных крошек с ссылками. Было бы круто, если бы вы выложили этот сервис на github, например, тогда сообщество помогло бы усовершенствовать его. Было ещё круче выложить все исходники битрикса на какой-нибудь открытый репозиторий, чтоб можно было видеть изменения после обновлений)
Федор, я тут уже писал про проблему хранения версий. Кратко повторю. Это опасно. Злоумышленник может начать сравнивать версии, и на основе изменений атаковать необновленные продукты (ну к примеру, пропустили где-то XSS-атаку).
Выкладывать исходники проекта на гитхаб я не могу, к сожалению. Это и не полностью моя разработка, да и затратно может оказаться за этим следить.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».