Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

WSocket

Simple WSGI HTTP + Websocket Server, Framework, Middleware And App.

Downloads

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 HTTPsocket, 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 can used with any WSGI compatible web framework

Flask, Django, Pyramid, Bottle, ... supported

Handler

wsgiref.simple_server.WSGIRequestHandler like class named FixedHandler that always wrap WSGI app using Middleware. changes from WSGIRequestHandler :

  • Prevents reverse DNS lookups
  • errorless logger
  • use ServerHandler 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 below 1.1 are not supported some clients like Firefox.
  • removed hop-by-hop headers checker because it raise errors on Upgrade and Connection headers
  • check 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

View Documentaion - https://wsocket.gitbook.io/ Report Bugs - https://github.com/Ksengine/WSocket/issues/new/

License

Code and documentation are available according to the MIT License (see LICENSE).

Release files for WSocket 2.0.0.dev2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for WSocket 2.0.0.dev2
File Size Uploaded
WSocket-2.0.0.dev2.tar.gz 24.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for WSocket 2.0.0.dev2
File Interpreter ABI Platform
WSocket-2.0.0.dev2-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 43.9 kB

Release files / WSocket-2.0.0.dev2.tar.gz

Download URL WSocket-2.0.0.dev2.tar.gz
Size 24.0 kB
Tags Source
SHA-256 checksum
How to use checksums
b17a8165e492dac91c06027b8ca5a478f1b0b2b9bd6cb4219140ec0b955f2c00
BLAKE2b-256 checksum
How to use checksums
320a90b3d85bb9996b043473282dab34ad74af6c31b1169ba29234a3279ba4b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/2.7.16

Release files / WSocket-2.0.0.dev2-py2.py3-none-any.whl

Download URL WSocket-2.0.0.dev2-py2.py3-none-any.whl
Size 19.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
88645c82b8a1065c635fa3c8d344ea1ae599e0c7c0615101d4806061070d5e16
BLAKE2b-256 checksum
How to use checksums
106b29fa2da888ac20e8e1319db9ec8d78a1046b57f4f4b5ea74a95f82c82ccc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/2.7.16
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page