戰_ 2015-12-14 14:15 采纳率: 0%
浏览 697

百度音乐Api返回的XML中 <p2p></p2p> 结点中的hash值怎么用?

使用百度音乐API的时候(比如你要搜索 "许巍"的"曾经的你" 就可以使用

http://box.zhangmen.baidu.com/x?op=12&count=1&title=曾经的你$$许巍$$$$) , 它会返回一个xml文件 , 前面部分我知道怎么用 ,就是看不明白xml最后 节点部分 ,比如:

<p2p>
    <hash>c78d0c3c9227c967c86b98e24cc392555e6c7323</hash>
    <url>
        <![CDATA[ ]]>
    </url>
    <type>mp3</type>
    <size>6322285</size>
    <bitrate>192</bitrate>
</p2p>

我通过搜索, 仅仅只是了解到可能跟ed2k有关, 因为 ed2k 地址的格式是

ed2k://|file|<文件名称>|<文件大小>|<文件哈希值>|/,
然后我就用上面节点部分的信息组成了下面的ed2k地址 :

ed2k://|file|曾经的你.mp3|6322285|c78d0c3c9227c967c86b98e24cc392555e6c7323|/

上面的地址自己验证了发现根本用不了,然后去找了一个有用的ed2k地址来对比就发现了问题, 正常的ed2k的hash值都是32位的, 但是节点给出的hash值位数是40位,然后又搜索, 只搜索到一篇文章说“默认情况下计算出的哈希数值是32位的,但是转换为磁性链接的哈希数值必须是40位的。这里就涉及到一个数值转换问题......” , 然后我就使用了他的数值转换方法,发现根本行不通。我想知道这个节点给出的是啥玩意?怎么用?

  • 写回答

1条回答 默认 最新

  • ha_lydms 后端领域优质创作者 2023-03-29 22:22
    关注

    采用字符串,直接转换试试,或者是不是内部加了1层其他的加密呢?

    评论

报告相同问题?

悬赏问题

  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题