cornfield-io/middlewares

PSR-15: HTTP 服务器请求处理器实现。

2.1.0 2019-03-31 07:54 UTC

This package is auto-updated.

Last update: 2024-09-29 04:14:42 UTC


README

Latest Version on Packagist Software License Build Status Coverage Status Quality Score

PSR-15: HTTP 服务器请求处理器实现。

安装

通过 Composer

$ composer require cornfield-io/middlewares

要求

  • 要使用 Cornfield\Middlewares,您需要 PHP >= 7.2.0,但推荐使用最新的稳定版 PHP。

  • PSR-7 的实现(我们推荐 Zend Diactoros 项目)。

  • 可选地,您也可以安装一个 PSR-11 依赖注入容器(我们推荐 PHP-DI 项目)。

在整个文档中,我们将假设您正在使用上述软件包。如果需要,您仍然可以安装其他 PSR-7 或 PSR-11 的实现。

使用方法

添加的所有中间件必须实现 Psr\Http\Server\MiddlewareInterface

<?php

use Cornfield\Middlewares\Middlewares;
use Zend\Diactoros\ServerRequestFactory;

$middlewares = new Middlewares();
$request = ServerRequestFactory::fromGlobals($_SERVER, $_GET, $_POST, $_COOKIE, $_FILES);

// Prepend one or more middlewares
$middlewares->unshift('Middleware1');
$middlewares->unshift([Middleware2, 'Middleware3']);

// Push one or more middlewares
$middlewares->push(Middleware4);
$middlewares->push(['Middleware5', Middleware6]);

// Process the request
$response = $middlewares->handle($request);

ContainerInterface

Cornfield\Middlewares 支持 Psr\Container\ContainerInterface

<?php

use Cornfield\Middlewares\Middlewares;

$middlewares = new Middlewares(/* ContainerInterface */);

// Or

$middlewares->setContainer(/* ContainerInterface */);

变更日志

有关最近更改的详细信息,请参阅 CHANGELOG

测试

$ composer test

开发

$ composer dev

贡献

有关详细信息,请参阅 CONTRIBUTINGCODE_OF_CONDUCT

安全

如果您发现任何与安全相关的问题,请通过电子邮件而不是问题跟踪器报告。

鸣谢

许可

MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件