Estándares PSR · Pregunta 9 de 12
Un servicio llama a una API externa con la RequestFactory de TYPO3: $this->requestFactory->request($url, 'GET', ['timeout' => 5]). ¿Qué afirmaciones son correctas?
2 respuestas son correctas. Medio
Mostrar solución
Solución
- B Si la API responde con 404 o 500, Guzzle lanza por defecto una excepción que hay que capturar
- D El resultado es una respuesta PSR-7, y el contenido se lee p. ej. con (string)$response->getBody()
Explicación
request() pasa la petición a un cliente Guzzle preconfigurado con los ajustes de $GLOBALS['TYPO3_CONF_VARS']['HTTP'], como proxy y cabeceras. Las opciones del tercer parámetro los complementan o sobrescriben para esa llamada. A nivel global, timeout es 0, es decir, ilimitado, por lo que merece la pena fijar un límite propio. Como http_errors sigue activado, los códigos de estado a partir de 400 provocan una RequestException.