bentools / psr7-request-matcher
适用于多个项目的PSR-7 RequestMatcher接口。
1.1
2018-03-07 10:54 UTC
Requires
- php: >=5.3
- psr/http-message: ^1.0
Requires (Dev)
- php: >=5.4
- guzzlehttp/psr7: ^1.4
- phpunit/phpunit: @stable
- satooshi/php-coveralls: @stable
- squizlabs/php_codesniffer: @stable
This package is auto-updated.
Last update: 2024-09-15 00:19:23 UTC
README
PSR-7 请求匹配器
这个库仅包含用于实现,以检查请求和/或响应是否满足某些任意条件的接口。
这些接口不提供返回类型提示,因此与 PHP 5.3+ 兼容。
示例
请求匹配器
namespace App; use BenTools\Psr7\RequestMatcherInterface; use Psr\Http\Message\RequestInterface; class ExampleOrgRequestMatcher implements RequestMatcherInterface { /** * @inheritdoc */ public function matchRequest(RequestInterface $request) { return 'www.example.org' === $request->getUri()->getHost(); } }
响应匹配器
namespace App; use BenTools\Psr7\ResponseMatcherInterface; use Psr\Http\Message\ResponseInterface; class TeapotResponseMatcher implements ResponseMatcherInterface { /** * @inheritdoc */ public function matchResponse(ResponseInterface $response) { return 418 === $response->getStatusCode(); } }
传输匹配器
namespace App; use BenTools\Psr7\TransferMatcherInterface; use Psr\Http\Message\RequestInterface; use Psr\Http\Message\ResponseInterface; class DummyTransferMatcher implements TransferMatcherInterface { /** * @inheritdoc */ public function matchTransfer(RequestInterface $request, ResponseInterface $response) { return $request->hasHeader('Authorization') && 'Welcome, human.' === (string) $response->getBody(); } }
安装
composer require bentools/psr7-request-matcher
测试
./vendor/bin/phpunit