Wsocket
Simple WSGI HTTP + Websocket Server, Framework, Middleware And App.
Note: I am a 16 years old student.I have no enough knowledge. So can anyone help me to develop this library?
Server
Server(WSGI) creates and listens at the HTTP socket, dispatching the requests to a handler. WSGIRef server but uses threads to handle requests by using the ThreadingMixIn. This is useful to handle web browsers pre opening sockets, on which Server would wait indefinitely.
can used with any WSGI compatible web framework
Middleware
convert any WSGI compatible web framework to Websocket+HTTP framework using middleware.
works with many WSGI compatible servers and any WSGI compatible web framework
Flask, Django, Pyramid, Bottle, ... supported
Handler
wsgiref.simple_server.WSGIRequestHandler
like class named WebSocketHandler
that always wrap WSGI app using Middleware.
changes from WSGIRequestHandler
:
Prevents reverse DNS lookups
error less logger
Inherited from
FixedHandler
(fixed HTTP handler)uses
FixedServerHandler
to make it WSGI
You can convert wsgiref to a websocket+HTTP server using this handler
ServerHandler
wsgiref.simple_server.ServerHandler
(inherited from wsgiref.handlers.ServerHandler
) like handler named FixedServerHandler
.
changes from ServerHandler
:
set HTTP version to
1.1
because versions below1.1
are not supported some clients like Firefox.
This is a little hack. report any errors to Issue Tracker
removed hop-by-hop headers checker because it raise errors on
Upgrade
andConnection
headerscheck that all headers are strings
Framework
basic WSGI web application framework that uses Middleware.
simple routes handler
auto description to status code
headers checker
send data as soon as possible
send strings, bytes, lists(even bytes and strings mixed) or files directly
error catcher and error logger
works with many WSGI compatible servers
App
Event based app for websocket communication. this is app that uses Framework if not events handled by developer. this app works like demo(echo) app.
Features
all Middleware, Handler, Framework and App has following features.
websocket sub protocol supported
websocket message compression supported (works if client asks)
receive and send pong and ping messages(with automatic pong sender)
receive and send binary or text messages
works for messages with or without mask
closing messages supported
auto and manual close
More
Guide - View Documentaion for examples and API reference.
Report - bugs and ideas on Github issue tracker
License - Code and documentation are available according to the MIT License (see LICENSE).
Last updated