autobahn.websocket.compress_base¶
Classes¶
Base class for WebSocket compression negotiated parameters. |
|
Base class for WebSocket compression parameter client offers. |
|
Base class for WebSocket compression parameter client offer accepts by the server. |
|
Base class for WebSocket compression parameter server responses. |
|
Base class for WebSocket compression parameter server response accepts by client. |
Module Contents¶
- class PerMessageCompress[source]¶
Base class for WebSocket compression negotiated parameters.
Concrete subclasses (one per permessage-compress extension) implement the decompression interface used by the WebSocket protocol:
start_decompress_message(self)decompress_message_data(self, data, max_output_len=None)end_decompress_message(self)
Bounded-decompression contract for
decompress_message_data: whenmax_output_lenis notNone, the call returns at mostmax_output_lenoctets of decompressed output and raisesautobahn.exception.PayloadExceededErrorif the input would produce more - it never silently truncates.max_output_len=None(the default) leaves decompression unbounded. Backends whose underlying library exposes an incremental output limit (deflate, bzip2) enforce the bound before fully inflating a frame; backends without one (snappy, brotli) inflate the frame (already bounded on the wire bymaxFramePayloadSize) and then check, a weaker but still-clean per-frame guarantee.
- class PerMessageCompressOffer[source]¶
Base class for WebSocket compression parameter client offers.
- class PerMessageCompressOfferAccept[source]¶
Base class for WebSocket compression parameter client offer accepts by the server.