Ich verwende das Ruby-Juwel rest-client (1.6.7), um Daten mit HTTP-GET-Anforderungen abzurufen. Manchmal sind die Antworten jedoch größer, als ich behandeln möchte. Daher möchte ich, dass die RestClient
den Lesevorgang stoppt, sobald sie eine von mir festgelegte Größenbeschränkung überschreitet. Die documentation sagtBegrenzte Größe der Antwort gelesen von Rest-Client
Für Fälle nicht durch die allgemeine API abgedeckt sind, können Sie die Anfrage Klasse :: RestClient verwenden, die einen niedrigeren Level-API zur Verfügung stellen.
aber ich sehe nicht, wie das mir hilft. Ich sehe nichts, was aussieht wie ein Haken, um den eingehenden Datenstrom zu verarbeiten, nur Operationen, die ich ausführen könnte, nachdem das Ganze gelesen wurde. Ich möchte keine Zeit und keinen Speicher verschwenden, um eine große Antwort in einen Puffer zu schreiben, nur um sie zu verwerfen.
Wie kann ich einen Grenzwert für die Datenmenge festlegen, die von RestClient
in einer GET
Anfrage gelesen wird? Oder gibt es einen anderen Client, den ich verwenden kann, der es einfach macht, ein solches Limit festzulegen?
Können Sie nicht einfach 'Content-Length' Header verwenden, um die Antwortgröße zu überprüfen, und dann entscheiden, ob Sie fortfahren möchten? – EdvardM