name 和 piece 信息为 Buffer 开头的字符串
kyledh opened this issue · comments
Kyle commented
{ info:
Dict {
files: [ [Object], [Object], [Object], [Object] ],
name: <Buffer 41 44 33 2e 33 38 45 4e>,
'piece length': 2097152,
pieces: <Buffer f0 b9 7d 28 6e 3d 8a 65 be c3 ba 98 e6 54 0f d1 1e 19 a9 78 10 57 e0 f8 46 e8 9c c6 0a e4 9e 7d f0 be 0f 32 32 3b 33 62 e2 8f bd a8 eb 8b cc f8 5e c7 ... > },
address: '90.154.234.142',
port: 18382,
infohash: '8a2fbdccab4779b08c3fbb090ba9fa48da86723a',
magnet: 'magnet:?xt=urn:btih:8a2fbdccab4779b08c3fbb090ba9fa48da86723a' }
请问是就这样显示还是哪里有问题?node 版本4.3.2和5.7.1都是如此
fanpei91 commented
嘿, 又是一个写代码写傻了的家伙.
info
是所有种子文件都有的字段信息, 其他字段是我后期为了方便其他用途(数据挖掘分析)加上的. 你随便找个.torrent
种子文件, 把它们进行解码, 会发现也有我这个info
的字段, 而且格式是一模一样的. 难道你不好奇用种子文件从迅雷下载资源的时候, 可以看到文件名, 资源大小, 文件列表么? 这都是info
字段的.
JavaScript 你总会嘛? 这是 Object
类型. Buffer
是 Node.js 特有的数据类型, 你直接.toString()
即可看到String
的类型数据了. 比如metadata.info.name.toString()
Kyle commented
原来如此,非常感谢你的回复😄
fanpei91 commented
不客气.
wangtubs commented
请问如果直接保存到数据库mongodb或者elasticsearch了,怎么让这些字段转换出来。是不是最好在存数据库的时候就把类型转换过来?
wangtubs commented
看不懂?name: <Buffer 41 44 33 2e 33 38 45 4e>, 这总数据已经存在数据库里了怎么办。怎么显示成utf-8的格式
wangtubs commented
name: <Buffer 41 44 33 2e 33 38 45 4e>