繁体   English   中英

Base64在节点(node.js)中有效地从Buffer到Buffer进行解码

[英]Base64 decode from Buffer to Buffer efficiently in node (node.js)

我目前在noVNC中有一个python和C版本的wsproxy(WebSockets到普通的TCP套接字代理)。 我想使用node.js创建一个wsproxy版本。 一个关键因素(以及我不仅仅使用现有节点WebSocket代码的原因)是,在WebSocket标准具有二进制编码之前,必须对wsproxy和浏览器/客户端之间的所有流量进行编码(并且base64 decode / encode快速简便在浏览器中)。

缓冲区类型具有base64编码支持,但这是从Buffer到字符串,反之亦然。 如何在两个缓冲区之间进行base64编码/解码而不必先转换为字符串?

约束:

  • 直接缓冲到缓冲区 (除非你可以显示Buffer-> string-> Buffer也一样快)。
  • 由于node有内置的base64支持,我想使用它而不是外部模块
  • 在单个缓冲区内进行编码/解码是可以接受的。

是对节点中base64支持的讨论,但从我看到的内容并没有回答我的问题。

您应该可以使用流来执行此操作,但首先请阅读此博客中有关UTF-8解码的信息,因为您可能会遇到类似的问题。 如果你不需要它,我不是建议你做UTF-8编码/解码,而是你看看这个代码如何处理分散在由块边界分隔的多个字节的单个字符的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM