nin/phalcon-middleware
最新稳定版本:v1.0.0
Composer 安装命令:
composer require nin/phalcon-middleware
包简介
Integrates Middleware with Phalcon 5.
README 文档
README
This is a package to integrate middleware with Phalcon 5. Middleware provide a convenient mechanism for inspecting and filtering HTTP requests entering your application.
Installation:
Require this package with composer.
composer require nin/phalcon-middleware
Register a Provider in index.php
$container = new \Phalcon\Di\FactoryDefault(); $container->register(new \Nin\Middleware\ServiceProvider());
OR app/config/providers.php
return [ \Nin\Middleware\ServiceProvider::class, ];
Usage:
Config:
Make config file config/middleware.php
<?php return [ // The application's global HTTP middleware stack // These middleware are run during every request to your application. 'middleware_global' => [ \App\Middleware\TrimStrings::class ], // The application's route middleware groups. 'middleware_groups' => [ 'web' => [ \App\Middleware\StartSession::class ], 'api' => [ \App\Middleware\ApiMiddleware::class, \App\Middleware\AdminApiMiddleware::class ] ], ];
Make Middleware Class:
<?php namespace App\Middleware; use Nin\Middleware\Middleware; class TestMiddleware extends Middleware { public function handle($request) { if ($request->get('token') !== 'valid-token') { throw new \Exception('Token invalid.'); } return parent::handle($request); } }
Assigning Middleware To Routes:
use Phalcon\Mvc\Router; $router = new Router(); $router->addGet( '/invoices/edit/{id}', [ 'controller' => 'invoices', 'action' => 'edit', 'middleware' => ['web', 'auth'], ] );
For groups
new \Phalcon\Mvc\Router\Group([ 'module' => 'backend', 'middleware' => 'web', ]);
Assigning Middleware To Controller:
class InvoicesController extends Controller { public function initialize() { $this->middleware->attach('auth'); } public function editAction() { // OR: $this->middleware->attach('auth'); } }
Middleware Parameters:
$this->middleware->attach( ['web', 'auth:admin']); class AuthMiddleware extends \Nin\Middleware\Middleware { public function handle($request) { $param = $this->getParam(); if ($param !== 'admin') { throw new \Exception('Authenticate Fail.'); } return parent::handle($request); } }
Redirecting:
Redirect to route:
public function handle($request) { if ($this->getParam() !== 'admin') { return $this->redirectToRoute('login'); } return parent::handle($request); }
Redirect to url:
public function handle($request) { if ($this->getParam() !== 'admin') { return $this->redirectToUrl('/login'); } return parent::handle($request); }
nin/phalcon-middleware 适用场景与选型建议
nin/phalcon-middleware 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 7 次下载、GitHub Stars 达 0, 最近一次更新时间为 2023 年 02 月 12 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「middleware」 「phalcon」 「phalcon 5」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 nin/phalcon-middleware 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 nin/phalcon-middleware 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 nin/phalcon-middleware 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Shoot aims to make providing data to your templates more manageable
Slim Framework 3 CSRF protection middleware utilities
Uniondrug Trace Client Component for uniondrug/framework
Cloudflare Middleware For Guzzle
Библиотека для работы с BigQuery
PSR-15 middleware to handle CSRF-token verification
统计信息
- 总下载量: 7
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 19
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-02-12