Ich machte eine POST-Anfrage an eine Sinatra-App. Ich habe bemerkt, dass die Parameter als StringIO im Server ankommen. Es kann mit request.body.read
gelesen werden. Es kann jedoch nur einmal gelesen werden. Um es noch einmal zu lesen, muss ich request.body.rewind
(haha, Sinatra) laufen.Warum muss Sinatra den Anfragetext zurückspulen?
Warum ist es so konzipiert? Ich kann sehen, dass dies beim Streaming von Daten nützlich ist, aber gibt es andere Anwendungen?
Ich fragte mich auch aus dem [GitHub Webhook-Beispiel] (https://developer.github.com/webhooks/securing/). – Leo