views:

70

answers:

0

I currently have a python and C version of wsproxy (WebSockets to plain TCP socket proxy) in noVNC. I would like to create a version of wsproxy using node.js. A key factor (and the reason I'm not just using existing node WebSocket code) is that until the WebSocket standard has binary encoding, all traffic between wsproxy and the browser/client must be encoded (and base64 decode/encode is fast and easy in the browser).

Buffer types have base64 encoding support but this is from a Buffer to a string and vice versa. How can I base64 encode/decode between two buffers without having to convert to a string first?

Constraints:

  • Direct Buffer to Buffer (unless you can show Buffer->string->Buffer is just as fast).
  • Since node has built-in base64 support I would like to use that and not external modules.
  • In place encode/decode within a single Buffer is acceptable.

Here is a discussion of base64 support in node, but from what I can see doesn't answer my question.