Closed arteymix closed 8 years ago
FastCGI can abort the request: http://www.fastcgi.com/devkit/doc/fcgi-spec.html#S5.4
I introduced two changes related to VSGI:
Response.get_body_async
for convenienceI merged the return value and it's really awesome:
perform_routing
(consistent handling)OPTIONS
can produce an Allow
header even if no route is matchedRoute
like the one created by use
are not producing their matched methodsThe cancellable API and I/O priority could be part of the context.
We don't really need a cancellable/priority API since this is something we would rather do specifically.
Returning a boolean value from the callbacks was a very elegant solution for the continuation-passing style.
I have two idea that could change quite a lot VSGI design:
ApplicationCallback
The cancellable API would provide the capability to the server to literally cancel a dispatched request processing. http://valadoc.org/#!api=gio-2.0/GLib.Cancellable
In short, if a client connection closes before time, we could cancel the whole process gracefully.
The return value for
ApplicationCallback
would let the caller know if the request has been or will eventually be handled (asynchronously). For Valum, it is a very interesting change because we could simply return thenext
callback:However, these two changes would affect the APIs quite drastically. The cancellable can be implemented in the
Request
orResponse
object.