Exception handler needs to handle exception subclassing
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 50/100
Línea de trabajo
Comienza por el método toHttpException mostrado en la issue e inspecciona cómo se seleccionan actualmente las clases de excepción. Verifica el comportamiento de BadRequestHttpException y de otras subclases de HttpException, y confirma después que una excepción de bad request produce una respuesta 400 en lugar de una respuesta 500.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The exception handler currently only uses get_class() to determine the type of exception:
/**
* Convert err to HttpException.
*
* @param mixed $err
*
* @return HttpException
*/
protected function toHttpException(Exception $err): HttpException
{
$errClass = get_class($err);
switch ($errClass) {
case HttpException::class:
$httpErr = $err;
break;
// 404 Model not found.
case ModelNotFoundException::class:
$httpErr = $this->convertFromModelNotFound($err);
break;
case QueryException::class:
default:
$httpErr = $this->defaultHttpException();
break;
}
return $httpErr;
}
So throwing a BadRequestHttpException gets serialized to a 500 error instead of a 400 error.
- Lenguaje dominante
- PHP
- Estrellas
- 6
- Forks
- 2
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ml-opensource/rest-api-server
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
Todos los issues de ml-opensource/rest-api-server
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
glpi-project/glpi#25842 ·
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 1/5 Menos de una hora Aptitud para principiantes 83/100
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 1/5 Menos de una hora Aptitud para principiantes 86/100
Los mantenedores suelen responder en 3 días
-
Перевод устарел
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día