TS 写的 bencode 编解码器,可以命令行使用。

2023-07-29 13:14:35 +08:00
 xlsepiphone

闲来没事,想学学 BT 协议,然后就稀里糊涂的开始写 bencode 练练手。

最开始想使用流来处理字节,省内存,后来发现 node 的流真的太难用了,参考我上个帖子。。。

昨天还是一股脑的把数据读到内存里处理了,一般用 bencode 编码的种子也不会太大,我看到过最大的也不超过 10MB 。

node 对于字节的处理真是不友好,可能是因为 JS 没有字节这个基本数据类型,所以 node 里面有 Buffer 、ArrayBuffer 、Unit8Array 。。。让人傻傻分不清

GitHub: node-bencode

1019 次点击
所在节点    分享创造
3 条回复
hxsf
2023-07-29 13:35:01 +08:00
uint8array 不就是你要的东西吗
xlsepiphone
2023-07-29 13:38:18 +08:00
@hxsf #1 Buffer 是 Node 特有的,Unit8Array 是 web 标准,我只是觉得二进制这块有点乱。
Leviathann
2023-07-29 14:07:11 +08:00
之前为了实现产品的某个 sb 需求搞了一下文件的序列化,发现 dom 环境下除了用异步的 fetch ,居然没有可以直接把 base64 转文件的方法,所以还得手写从 string 到 uint8array 的转换

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/960764

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX