2017 © Pedro Peláez
 

library slim-json-handler-error

Redefine Slim errors to JSON. Implements JSON-API Errors (v1.0)

image

restyphp/slim-json-handler-error

Redefine Slim errors to JSON. Implements JSON-API Errors (v1.0)

  • Wednesday, April 11, 2018
  • by mostofreddy
  • Repository
  • 0 Watchers
  • 0 Stars
  • 93 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 8 Versions
  • 3 % Grown

The README.md

Deprecated, (*1)

Slim Json Error Handler

Build Status Latest Stable Version License Total Downloads composer.lock, (*2)

Redefine el formato de los mensajes de Slim a JSON. Implementa [JSON-API Errors](JSON-API Errors) (v1.0)., (*3)

Versión estable

0.4.1, (*4)

License

The MIT License (MIT). Ver el archivo LICENSE para más información, (*5)

Introducción

Slim posee cuantro handlers para manejar distintos tipos de error, (*6)

  • Errores de PHP (PhpError)
  • Ruta no encontrada (NotFound)
  • Método HTTP incorrecto (NotAllowed)
  • Captura de excepciones de usuario (Error)

Cada uno de ellos devuelve el error en el formato que sea solicitado por a cabecera Content-type (hmtl, json, etc). Este middleware reescribe estos handlers para que siempre devuelvan formato JSON., (*7)

Formato de respuesta, (*8)

Para unificar el formato de respuesta se siguió el estandar de JSON-API Error, (*9)

Ejemplo

{
  "errors": [
    {
      "title": "Internal server error",
      "details": "...",
      "code": XXX,
      "status": 500
    }
  ]
}

Donde:, (*10)

key Descripción
title Título del error
details Detalles del error (solo es devuelto cuando el parametro displayErrorDetails tiene como valor true)
code Código propio del error
status HTTP CODE del error

Configuración de Slim


// Slim use Slim\App; use Resty\Slim\BuilderJsonErrorResponses; $config = [ // .... ]; // para Desarrollo / QA $config['settings'] = [ "displayErrorDetails" => true ]; // para Producción $config['settings'] = [ "displayErrorDetails" => false ]; // Redefine - errors $config['errorHandler'] = BuilderJsonErrorResponses::jsonError(); $config['phpErrorHandler'] = BuilderJsonErrorResponses::jsonPhpError(); $config['notFoundHandler'] = BuilderJsonErrorResponses::jsonNotFound(); $config['notAllowedHandler'] = BuilderJsonErrorResponses::jsonNotAllowed(); $app = new App($config); // ...

Mensajes de error

Errores de PHP

Clase: \Resty\Slim\Handler\Error, (*11)

{
  "errors": [
    {
        "title": "Internal server error",
        "details": "...",
        "code": 0,
        "status": 500,
        "source": {
            "file": "...",
            "line": "..."
        },
        "meta": {
            "trace": [...]
        }
    }
  ]
}

Ruta no encontrada

Clase: \Resty\Slim\Handler\NotFound, (*12)

{
  "errors": [
    {
      "title": "Page not found",
      "details": "Request => GET:http://www.dummy.com/dummies",
      "code": 0,
      "status": 404
    }
  ]
}

Método HTTP incorrecto

Clase: \Resty\Slim\Handler\NotAllowed, (*13)

{
  "errors": [
    {
      "title": "Method not allowed",
      "details": "Request => POST:http://www.dummy.com. Method not allowed. Must be one of GET",
      "code": 0,
      "status": 405
    }
  ]
}

Captura de excepciones de usuario

Clase: \Resty\Slim\Handler\Error, (*14)

{
  "errors": [
    {
        "title": "Internal server error",
        "details": "...",
        "code": 0,
        "status": 500,
        "source": {
            "file": "...",
            "line": "..."
        },
        "meta": {
            "trace": [...]
        }
    }
  ]
}

The Versions

11/04 2018

dev-master

9999999-dev https://github.com/mostofreddy/slim-json-handler-error

Redefine Slim errors to JSON. Implements JSON-API Errors (v1.0)

  Sources   Download

MIT

The Requires

 

The Development Requires

api micro framework json rest slim microframework error handler error json-api restfull resty restyphp

02/06 2017

0.4.1

0.4.1.0 https://github.com/mostofreddy/slim-json-handler-error

Redefine Slim errors to JSON. Implements JSON-API Errors (v1.0)

  Sources   Download

MIT

The Requires

 

The Development Requires

api framework json rest slim microframework error handler error json-api restfull resty restyphp

18/05 2017

0.4.0

0.4.0.0 https://github.com/mostofreddy/slim-json-handler-error

Redefine Slim errors to JSON. Implements JSON-API Errors (v1.0)

  Sources   Download

MIT

The Requires

 

The Development Requires

api framework json rest slim microframework error handler error json-api restfull resty restyphp

02/03 2017

0.3.0

0.3.0.0 https://github.com/mostofreddy/slim-json-handler-error

Handlers de errores para Slim que siempre devuelven los errores en formato JSON utilizando el estandar de JSON-API.

  Sources   Download

MIT

The Requires

 

The Development Requires

micro framework json rest slim error handler error restfull resty restyphp

18/01 2017

0.2.1

0.2.1.0 https://github.com/mostofreddy/slim-json-handler-error

Handlers de errores para Slim que siempre devuelven los errores en formato JSON utilizando el estandar de JSON-API.

  Sources   Download

MIT

The Requires

  • php >=7.0.0

 

The Development Requires

micro framework json rest slim error handler error restfull resty restyphp

17/12 2016

0.2.0

0.2.0.0 https://github.com/mostofreddy/slim-json-handler-error

Handlers de errores para Slim que siempre devuelven los errores en formato JSON utilizando el estandar de JSON-API.

  Sources   Download

MIT

The Requires

  • php >=7.0.0

 

The Development Requires

micro framework json rest slim error handler error restfull resty restyphp

07/12 2016

0.1.1

0.1.1.0 https://github.com/mostofreddy/slim-json-handler-error

Handlers de errores para Slim que siempre devuelven los errores en formato JSON utilizando el estandar de JSON-API.

  Sources   Download

MIT

The Requires

  • php >=7.0.0

 

The Development Requires

micro framework json rest slim error handler error restfull resty restyphp

07/12 2016

0.1.0

0.1.0.0 https://github.com/mostofreddy/slim-json-handler-error

Handlers de errores para Slim que siempre devuelven los errores en formato JSON utilizando el estandar de JSON-API.

  Sources   Download

MIT

The Requires

  • php >=7.0.0

 

The Development Requires

micro framework json rest slim error handler error restfull resty restyphp