Implement compressed READY
This commit is contained in:
parent
6d94e68c7a
commit
080b8119ad
@ -50,6 +50,7 @@ import logging, traceback
|
|||||||
import sys, time, re, json
|
import sys, time, re, json
|
||||||
import tempfile, os, hashlib
|
import tempfile, os, hashlib
|
||||||
import itertools
|
import itertools
|
||||||
|
import zlib
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
request_logging_format = '{method} {response.url} has returned {response.status}'
|
request_logging_format = '{method} {response.url} has returned {response.status}'
|
||||||
@ -298,6 +299,13 @@ class Client:
|
|||||||
|
|
||||||
@asyncio.coroutine
|
@asyncio.coroutine
|
||||||
def received_message(self, msg):
|
def received_message(self, msg):
|
||||||
|
if isinstance(msg, bytes):
|
||||||
|
print('compressed')
|
||||||
|
msg = zlib.decompress(msg, 15, 10490000) # This is 10 MiB
|
||||||
|
msg = msg.decode('utf-8')
|
||||||
|
|
||||||
|
msg = json.loads(msg)
|
||||||
|
|
||||||
log.debug('WebSocket Event: {}'.format(msg))
|
log.debug('WebSocket Event: {}'.format(msg))
|
||||||
self.dispatch('socket_response', msg)
|
self.dispatch('socket_response', msg)
|
||||||
|
|
||||||
@ -367,6 +375,7 @@ class Client:
|
|||||||
'$referrer': '',
|
'$referrer': '',
|
||||||
'$referring_domain': ''
|
'$referring_domain': ''
|
||||||
},
|
},
|
||||||
|
'compress': True,
|
||||||
'v': 3
|
'v': 3
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -698,7 +707,7 @@ class Client:
|
|||||||
yield from self.close()
|
yield from self.close()
|
||||||
break
|
break
|
||||||
|
|
||||||
yield from self.received_message(json.loads(msg))
|
yield from self.received_message(msg)
|
||||||
|
|
||||||
@asyncio.coroutine
|
@asyncio.coroutine
|
||||||
def close(self):
|
def close(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user