项目作者: httpsoft

项目描述 :
Error handling PSR-7 and PSR-15 components
高级语言: PHP
项目地址: git://github.com/httpsoft/http-error-handler.git
创建时间: 2020-07-30T11:12:22Z
项目社区:https://github.com/httpsoft/http-error-handler

开源协议:MIT License

下载


HTTP Error Handler

License
Latest Stable Version
Total Downloads
GitHub Build Status
GitHub Static Analysis Status
Scrutinizer Code Coverage
Scrutinizer Code Quality

This package implements Psr\Http\Server\MiddlewareInterface and Psr\Http\Server\RequestHandlerInterface.

Documentation

Installation

This package requires PHP version 7.4 or later.

  1. composer require httpsoft/http-error-handler

Usage ErrorHandler

  1. use HttpSoft\ErrorHandler\ErrorHandler;
  2. /**
  3. * @var Psr\Http\Message\ServerRequestInterface $request
  4. * @var Psr\Http\Server\RequestHandlerInterface $handler
  5. *
  6. * @var HttpSoft\ErrorHandler\ErrorListenerInterface $logErrorListener
  7. * @var HttpSoft\ErrorHandler\ErrorListenerInterface $sendErrorListener
  8. * @var HttpSoft\ErrorHandler\ErrorResponseGeneratorInterface $responseGenerator
  9. */
  10. $errorHandler = new ErrorHandler($handler, $responseGenerator);
  11. $errorHandler->addListener($logErrorListener);
  12. $errorHandler->addListener($sendErrorListener);
  13. /** @var \Psr\Http\Message\ResponseInterface $response */
  14. $response = $errorHandler->handle($request);

Usage ErrorHandlerMiddleware

  1. use HttpSoft\ErrorHandler\ErrorHandlerMiddleware;
  2. /**
  3. * @var Psr\Http\Message\ServerRequestInterface $request
  4. * @var Psr\Http\Server\RequestHandlerInterface $handler
  5. *
  6. * @var HttpSoft\ErrorHandler\ErrorListenerInterface $logErrorListener
  7. * @var HttpSoft\ErrorHandler\ErrorListenerInterface $sendErrorListener
  8. * @var HttpSoft\ErrorHandler\ErrorResponseGeneratorInterface $responseGenerator
  9. */
  10. $errorHandler = new ErrorHandlerMiddleware($responseGenerator);
  11. $errorHandler->addListener($logErrorListener);
  12. $errorHandler->addListener($sendErrorListener);
  13. /** @var \Psr\Http\Message\ResponseInterface $response */
  14. $response = $errorHandler->process($request, $handler);