はい、それはできます。 Chrome 19+ supports it.
"https://github.com/crossbario/autobahn-python/blob/master/examples/twisted/websocket/echo_compressed/server_advanced.py"
from twisted.internet import reactor
from twisted.web.server import Site
from twisted.web.static import File
from autobahn.twisted.websocket import WebSocketServerFactory, \
listenWS
from autobahn.websocket.compress import *
def accept(offers):
for offer in offers:
return PerMessageDeflateOfferAccept(offer)
debug = True
factory = WebSocketServerFactory(u"ws://127.0.0.1:9000", debug=debug, debugCodePaths=debug)
factory.setProtocolOptions(perMessageCompressionAccept=accept)
listenWS(factory)
webdir = File(".")
web = Site(webdir)
reactor.listenTCP(8080, web)
reactor.run()
さらに詳しい情報:how PerMessageDeflateOffer is used in Autobahn examples。
(現在)AutobahnPythonはフレームごとの圧縮拡張をサポートしていません。いずれの場合でも、サポートのシグナリングは、WebSocket固有のHTTPヘッダーを介して行われ、「コンテンツエンコーディング」は行われません。 – oberstet
思い出してくれてありがとう。いずれにしても、WebSocketを使用してhttpメソッドとしてgzip圧縮をサポートする簡単な方法がありますか? – littlesun
いいえWebSocketで圧縮を使用するには、拡張機能を実装する必要があります。これには重要なコードが必要です。 – oberstet