Ho fatto una richiesta POST a un'app Sinatra. Ho notato che i parametri arrivano nel server come StringIO. Può essere letto usando request.body.read
. Tuttavia, può essere letto solo una volta. Per leggerlo di nuovo, ho bisogno di eseguire request.body.rewind
(haha, Sinatra).Perché Sinatra deve riavvolgere il corpo della richiesta?
Perché è stato progettato in questo modo? Posso vedere questo essere utile nello streaming dei dati ma ci sono altre applicazioni?
Mi sono interrogato anche su questo [esempio di webhook GitHub] (https://developer.github.com/webhooks/securing/). – Leo