Je règle le délai d'expiration à 300 secondes (pour tester une fonction AWS lambda + API Gateway), mais HTTPie continue à expirer à 30 secondes. Y a-t-il une limite supérieure fixée à 30 secondes ? J'utilise
http --timeout=300 POST https://...
30 est le délai d'attente par défaut défini, pas la limite supérieure.
Pour une raison quelconque, httpie
n'utilise pas le délai d'attente que je spécifie et expire à 30 secondes...
$ http --timeout=300 POST https://...
HTTP/1.1 504 Gateway Timeout
Connection: keep-alive
Content-Length: 41
Content-Type: application/json
Date: ...
{
"message": "Endpoint request timed out"
}
J'ai essayé avec --timeout=300
et --timeout 300
(ce qui ne devrait pas faire de différence, mais je voulais m'en assurer) et les résultats sont les mêmes : il expire à 30 secondes. L'appel de fonction devrait prendre environ 2 minutes (120 secondes), mais il ne dépasse jamais les 30 secondes.
Ce n'est pas un httpie
expiration. Vous recevez une réponse qui vous indique que l'intermédiaire entre vous et votre fonction lambda expire la demande. --timeout
est de votre ordinateur à cet intermédiaire. L'intermédiaire peut définir le délai d'attente qu'il souhaite de lui-même à votre fonction lambda. Ce n'est clairement pas un bogue HTTPie.
En fait, c'est un problème avec httpie. Mon délai d'expiration gunicorn est de 90 s et httpie s'arrête toujours à 30 s... Je sais que gunicorn n'expire pas car quelques secondes après la mort de httpie, je vois les résultats de sortie du serveur dans le journal.
@gnulnx, il existe un délai d'attente de connexion de 30 s par défaut que vous pouvez modifier via --timeout=n
.
(Le délai d'expiration par défaut sera supprimé dans la version 2.0.0.)
Commentaire le plus utile
Ce n'est pas un
httpie
expiration. Vous recevez une réponse qui vous indique que l'intermédiaire entre vous et votre fonction lambda expire la demande.--timeout
est de votre ordinateur à cet intermédiaire. L'intermédiaire peut définir le délai d'attente qu'il souhaite de lui-même à votre fonction lambda. Ce n'est clairement pas un bogue HTTPie.