mirror of https://github.com/rwf2/Rocket.git
4c6562cd29
This allows responses to be sent to the client even when data is only partially read, significantly improving the experience for the client from one with a "connection closed" error to one with a proper response. The consequence is a lifetime in 'Data'. Though other non-lifetime-introducing solutions exist, the introduction of a lifetime to 'Data' is a longstanding desire as it prevents smuggling 'Data' into a longer-lived context. Use of 'Data' in that context was unspecified with various runtime consequences. The addition of a lifetime bound by the request prevents this error statically. In summary, the changes are: * Clients receive responses even when data isn't fully read. * 'Data' becomes 'Data<'r>'. 'FromData' changes accordingly. * Route 'Outcome's are strictly tied to the request lifetime. Tangentially, the invalid length form field validation error message has improved to format length in byte units if it exceeds 1024. |
||
---|---|---|
.. | ||
0-introduction.md | ||
1-quickstart.md | ||
2-getting-started.md | ||
3-overview.md | ||
4-requests.md | ||
5-responses.md | ||
6-state.md | ||
7-fairings.md | ||
8-testing.md | ||
9-configuration.md | ||
10-pastebin.md | ||
11-conclusion.md | ||
index.md |