Hello,
How can I control whether the jupyter server sends binary websocket frames vs text websocket frames to the browser?
When monitoring websocket traffic between an ipython jupyter notebook kernel and the browser, all websocket frames, both to the browser and from the browser are in websocket text frames. This makes it easy to read the JSON dictionaries using almost any browser.
When monitoring websocket traffic between our Common Lisp kernel and a browser, the websocket frames to the browser are binary websocket frames and the frames from the browser are websocket text frames.
I recently learned that it is the jupyter notebook server (written in python) that is interposed between our kernel and the browser that is carrying out this websocket communication. Why is it using binary frames? Binary websocket frames are a lot harder to dig into and extract the JSON from.
I'd like to monitor the websocket traffic between the jupyter server and the browser for debugging.
It has been extremely helpful to do this in a painful/limited way to add jupyter widgets support to our kernel (based on cl-jupyter/Common Lisp).
Best,
Christian Schafmeister
Professor
Chemistry Department
Temple University