承接 oz/oz.router 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

oz/oz.router

最新稳定版本:0.1.0

Composer 安装命令:

composer require oz/oz.router

包简介

OZ Router module

README 文档

README

Warning

Этот проект находится в активной разработке. Между релизами могут происходить критические изменения.

Роутер для Bitrix D7 с PHP-DI, группами маршрутов, guards, middleware, гидратацией аргументов и автоматической нормализацией ответа.

oz.router сопоставляет текущий HttpRequest с маршрутом, собирает request-scoped DI-контейнер, выполняет guards и middleware, вызывает обработчик и преобразует результат в HttpResponse.

Quick Start

<?php

use Bitrix\Main\Loader;
use Oz\Router\Router;
use Oz\Router\RouterRunner;

require $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php';

Loader::includeModule('oz.router');

$router = new Router();

$router->get('/ping', static function (): array {
    return ['status' => 'ok'];
});

$response = (new RouterRunner($router))->run();
$response->send();

Что есть в модуле

  • регистрация маршрутов через get/post/put/patch/delete/option/any/add
  • вложенные group() с префиксами и наследованием policy
  • guards через guard() и exceptGuard()
  • middleware через middleware() и exceptMiddleware()
  • резолв handler arguments из path params, query, form-data и JSON body
  • автосвязывание контроллеров, middleware и guards через PHP-DI
  • валидация параметров и DTO через Bitrix\Main\Validation\ValidationService
  • встроенные точки входа для Bitrix component и service

Точки входа

  • ручной bootstrap через Router + RouterRunner
  • компонент oz:router.provider
  • service endpoint /bitrix/services/oz.api/

Практический пример

oz.router.sample показывает реальный layout для production-подобного API:

  • routes в config/routes/api.php
  • DI definitions в config/di.php
  • versioned API через group('/api/v1', ...)
  • controller handlers, DTO, guards и middleware

Документация

Раздел Описание
Старт и точки входа Установка, минимальный bootstrap, routes file, component и service endpoint
Маршрутизация Методы роутера, группы, handlers, route params, DI и нормализация ответа
Guards Контракт guard-классов, порядок выполнения и исключение guards
Middleware Контракт middleware, цепочка выполнения и post-processing ответа
Валидация Гидратация DTO, валидация параметров и формат ошибок
Конфигурация Module\Config, настройки модуля и provider/service runtime

Ключевые caveats

  • встроенный oz:router.provider автоматически пытается подключить di.php рядом с routes layout, но не использует сохранённый в настройках путь к DI-файлу
  • ExceptionHandler возвращает JSON только при Accept: application/json, иначе отвечает простым HTML-телом

Лицензия

См. LICENSE.

统计信息

  • 总下载量: 7
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2026-04-03

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固