Ich stelle das Timeout auf 300 Sekunden ein (um eine AWS Lambda-Funktion + API Gateway zu testen), aber HTTPie setzt das Timeout weiterhin bei 30 Sekunden ein. Gibt es eine Obergrenze von 30 Sekunden? Ich benutze
http --timeout=300 POST https://...
30 ist die Standardzeitüberschreitung, nicht die Obergrenze.
Aus irgendeinem Grund verwendet httpie
nicht das von mir angegebene Timeout und das Timeout erfolgt bei 30 Sekunden...
$ 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"
}
Ich habe dies mit --timeout=300
und --timeout 300
versucht (was keinen Unterschied machen sollte, aber ich wollte sichergehen) und die Ergebnisse sind die gleichen: Es läuft nach 30 Sekunden ab. Der Funktionsaufruf sollte ungefähr 2 Minuten (120 Sekunden) dauern, aber er wird nie über die 30 Sekunden hinausgehen.
Dies ist kein httpie
Timeout. Sie erhalten eine Antwort, die Ihnen mitteilt, dass der Vermittler zwischen Ihnen und Ihrer Lambda-Funktion das Zeitlimit der Anforderung überschreitet. --timeout
geht von Ihrem Computer an diesen Vermittler. Der Intermediär kann ein beliebiges Timeout von sich selbst für Ihre Lambda-Funktion festlegen. Dies ist definitiv kein HTTPie-Bug.
Tatsächlich ist dies ein Problem mit httpie. Mein Gunicorn-Timeout beträgt 90s und httpie stoppt immer noch bei 30s ... Ich weiß, dass Gunicorn keine Zeitüberschreitung hat, weil ein paar Sekunden nach dem Tod von httpie die Serverausgabeergebnisse im Protokoll angezeigt werden.
@gnulnx es gibt ein standardmäßiges 30s _connection_ timeout, das Sie über --timeout=n
ändern können.
(Das Standard-Timeout wird in v2.0.0 entfernt.)
Hilfreichster Kommentar
Dies ist kein
httpie
Timeout. Sie erhalten eine Antwort, die Ihnen mitteilt, dass der Vermittler zwischen Ihnen und Ihrer Lambda-Funktion das Zeitlimit der Anforderung überschreitet.--timeout
geht von Ihrem Computer an diesen Vermittler. Der Intermediär kann ein beliebiges Timeout von sich selbst für Ihre Lambda-Funktion festlegen. Dies ist definitiv kein HTTPie-Bug.