willdurand/stack-negotiation

此软件包已被弃用,不再维护。未建议替代软件包。

内容协商的 Stack 中间件。

v1.0.0 2014-10-28 15:35 UTC

This package is auto-updated.

Last update: 2022-01-31 11:59:45 UTC


README

Build Status Latest Stable Version

Stack 中间件用于内容协商。

安装

推荐通过 Composer 安装 StackNegotiation。

$ composer require "willdurand/stack-negotiation"

使用方法

use Negotiation\Stack\Negotiation;

$app = new Negotiation($app);

头部信息

Accept 头部

此中间件向请求中添加一个 _accept 属性,包含一个 AcceptHeader 对象(见: Negotiation 库)。它还添加一个包含 mime 类型的 _mime_type 属性(如果它不是一个媒体范围),以及一个包含首选格式值的 _format 属性。

Accept-Language 头部

此中间件向请求中添加一个 _accept_language 属性,包含一个 AcceptHeader 对象(见: Negotiation 库)。它还添加一个包含实际值的 _language 属性。

Content-Type 头部

此中间件能够解析请求体,并填充请求数据。它受到 Silex 的配方 接受 JSON 请求体FOSRestBundle Body Listener 的启发。

选项

你可以向中间件传递一个 选项 数组

$app = new Negotiation($app, null, null, null, [
    'language_priorities' => [ '... '],
    'format_priorities'   => [ '... '],
]);

单元测试

使用 Composer 设置测试套件

$ composer install --dev

使用 PHPUnit 运行它

$ ./vendor/bin/phpunit

贡献

查看 CONTRIBUTING 文件。

许可

StackNegotiation 在 MIT 许可下发布。有关详细信息,请参阅捆绑的 LICENSE 文件。