2017 © Pedro Peláez
 

library api-problem

PHP middleware that returns a json formatted response in case of error

image

los/api-problem

PHP middleware that returns a json formatted response in case of error

  • Monday, March 20, 2017
  • by Lansoweb
  • Repository
  • 2 Watchers
  • 3 Stars
  • 8,815 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 9 Versions
  • 7 % Grown

The README.md

Api Problem Middleware for PHP

This middleware returns a formatted json in case of error. It's inspired on the ApiProblem library, but with fewer dependencies., (*1)

Usage

Just add the middleware as the last in your application., (*2)

For example:, (*3)

$app->pipe(new \LosMiddleware\ApiProblem\ApiProblem());

It will return:, (*4)

{
  "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html",
  "title": "Method Not Allowed",
  "status": 405,
  "detail": "error",
  "code": "14868ef1-7ef4-4feb-a7ae-9a12c9097375"
}

Zend Expressive

If you are using expressive-skeleton, you can copy config/los-api-problem.global.php.dist to config/autoload/los-api-problem.global.php., (*5)

It uses the FinalHandler feature from Expressive. If you prefer to use other FinalHandler, you can manually add this middleware:, (*6)

return [
    'dependencies' => [
        'invokables' => [
            LosMiddleware\ApiProblem\ApiProblem::class => LosMiddleware\ApiProblem\ApiProblem::class,
        ],
    ],
    'middleware_pipeline' => [
        'error' => [
            'middleware' => [
                LosMiddleware\ApiProblem\ApiProblem::class, 
            ]
            'error' => true,
        ],
    ],
];    

But 404 errors will not be handled but this, only by the FinalHandler., (*7)

The Versions