Перейти к основному содержимому

Добро пожаловать!

Melezh

Melezh — серверная платформа, предоставляющая единый настраиваемый HTTP API для обработки запросов при помощи произвольного .os кода или готовых функций Открытого пакета интеграций. Система содержит множество инструментов для быстрого и гибкого создания своего сервиса, а также дальнейшей его поддержки и администрирования

Принцип работы

Решение позволяет создавать обработчики входящих HTTP-запросов на основе методов Открытого пакета интеграций или функций произвольных OneScript-модулей. Каждому обработчику может быть назначен URL, метод (GET, POST с JSON или POST с form-data), а также значения параметров по умолчанию. При этом параметры HTTP соответствуют параметрам функции обработчика без необходимости ручной реализации обработки HTTP-запросов. Система автоматически обрабатывает данные, сопоставляет адреса и назначенные им обработчики, отклоняет запросы с неподходящими методами или некорректным набором данных, а также логирует все происходящие события. Для удобного управления сервером и просмотра логов в Melezh реализована встроенная веб-консоль

Пример начальной настройки

В этом примере создается новый файл проекта с настройкой обработчика GET-запросов для функции ОтправитьТекстовоеСообщение из библиотеки работы с Telegram. Также в нем устанавливается значение по умолчанию для параметра token без возможности перезаписи ("строгий")


melezh СоздатьПроект --path ./test_proj.melezh
melezh ДобавитьОбработчикЗапросов --proj ./test_proj.melezh --lib telegram --func ОтправитьТекстовоеСообщение --method GET
melezh УстановитьАргументОбработчика --proj ./test_proj.melezh --handler 42281f11b --arg token --value "***" --strict true
melezh ЗапуститьПроект --proj ./test_proj.melezh --port 7788

Обработчик будет доступен на localhost:7788/42281f11b, где 42281f11b - идентификатор, получаемый при вызове ДобавитьОбработчикЗапросов, являясь одновременно и ключом обработчика для настройки, и URL эндпоинтом для обращений

Пример запроса для отправки текстового сообщения:

http://localhost:7788/42281f11b?chat=123123123&text="Hello world!"

Как вы могли заметить, мы не передаем токен, так как он установлен по умолчанию

Веб-интерфейс

Кроме CLI интерфейса, для более простой интерактивной настройки и управления, можно использовать встроенную в Melezh веб-консоль:

Melezh UI

На записи: вход в консоль, добавление нового обработчика для создания новости в Bitrix24 с указанием двух параметров по умолчанию, отключение двух обработчиков, просмотр подробностей одного из последних событий, просмотр всех логов по одному из обработчиков за сегодня


Веб-консоль позволяет:

  • Следить за последними событиями сервера
  • Добавлять, изменять и удалять обработчики, менять состав параметров по умолчанию
  • Включать и отключать обработчики на время
  • Просматривать подробные логи по каждому обработанному запросу
  • Изменять настройки сервера

Если вы только начинаете работу с Melezh, то рекомендуется начать именно с этого режима. Получить доступ к веб-консоли можно по адресу localhost:<ваш порт>/ui после создания и запуска проекта