
Hello, On dv., maig 24 2019, Jayanth Acharya wrote:
Thanks Meejah. Appreciate your clearing up that Flask is not based on twisted, not sure I got that impression earlier. Checked Klein, and it seems quite promising (and seem quite similar to Flask, from developer standpoint). From the documentation it was not quite evident to me, as to how to use HTTP2 under Klein. I did find a reference to HTTP2 in this pull-request, but again not clear to me: https://github.com/twisted/klein/pull/113
Checked treq, but is it really advantageous over request ? Also found no reference to HTTP2 in treq documents.
Alao thanks for the references to Crossbar.io and Autobahn. Will check them out shortly.
Just let me add something that may have been "obvious to everyone" on that PR and not to you at that point, but it will be "obvious" to you after the next 5-20 minutes: Notice how that PR introduces the "endpoints" concept, that is a *very* useful concept in Twisted, which basically allows you to add support for pretty much any transport without any effort. So, if you want to run an HTTP2 server, you need two things: 1. Read this bit of the klein and twisted documentation: https://klein.readthedocs.io/en/latest/examples/alternativerunning.html#exam... https://twistedmatrix.com/documents/current/core/howto/endpoints.html 2. Then you have to install the optional twisted[http2] dependency *and* because HTTP2 requires TLS, you have to enable that by using the endpoints API (e.g. in klein). That's it for the server. Twisted's documentation *could* be a bit better on this, if you want to take a go at it, I'm reasonably sure everyone would be happy. The only mention I found for http2 on twisted docs is: https://twistedmatrix.com/documents/current/installation/howto/optional.html... There is also this article which AFAIK still applies, except the optional dependency is twisted[http2] instead of twisted[h2]: https://pawelmhm.github.io/python/twisted/http2/python3/2016/07/30/twisted-h... Notice that an easy one would be to edit the documentation I linked to before, and add an example that runs an HTTP2 server, future people like you will be able to find a small example with the search bar :-). -- Evilham