Sir*_*b33 3 hash blockchain ethereum ipfs
当我将文件文件夹上传.jpg
到 IPFS 时,我会得到该文件夹的哈希值 - 这很酷。
但是该文件夹中的每个单独文件也会被散列吗?如果是这样,我如何获取每个文件的哈希值?
我基本上希望能够上传一大堆文件 - 比如 500 个图像 - 并一次性或以编程方式完成所有操作,并将每个文件的哈希值返回给我。
有办法做到这一点吗?
小智 7
是的!从命令行中,您可以获取运行时添加的每个文件的CID(内容 IDentifier,又名 IPFS 哈希)ipfs add -r <path to directory>
$ ipfs add -r gifs\nadded QmfBAEYhJp9ZjGvv8utB3Yv8uuuxsDKjv9rurkHRsYU3ih gifs/martian-iron-man.gif\nadded QmRBHTH3p4W2xAzgLxvdh8VJvAmWBgchwCr9G98EprwetE gifs/needs-more-dogs.gif\nadded QmZbffnCcV598QxsUy7WphXCAMZJULZAzy94tuFZzbFcdK gifs/satisfied-with-your-care.gif\nadded QmTxnmk85ESr97j2xLNFeVZW2Kk9FquhdswofchF8iDGFg gifs/stone-of-triumph.gif\nadded QmcN71Qh56oSg2YXsEXuf8o6u5CrBXbyYYzgMyAkdkcxxK gifs/thanks-dog.gif\nadded QmTnuLaivKc1Aj8LBf2iWBHDXsmedip3zSPbQcGi6BFwTC gifs\n
Run Code Online (Sandbox Code Playgroud)\n目录的根 CID 始终是列表中的最后一项。
\n--quiet
您可以使用标志将该命令的输出限制为仅包含 CID
\xe2\xa8\x8e ipfs add -r gifs --quiet\nQmfBAEYhJp9ZjGvv8utB3Yv8uuuxsDKjv9rurkHRsYU3ih\nQmRBHTH3p4W2xAzgLxvdh8VJvAmWBgchwCr9G98EprwetE\nQmZbffnCcV598QxsUy7WphXCAMZJULZAzy94tuFZzbFcdK\nQmTxnmk85ESr97j2xLNFeVZW2Kk9FquhdswofchF8iDGFg\nQmcN71Qh56oSg2YXsEXuf8o6u5CrBXbyYYzgMyAkdkcxxK\nQmTnuLaivKc1Aj8LBf2iWBHDXsmedip3zSPbQcGi6BFwTC\n
Run Code Online (Sandbox Code Playgroud)\n或者,如果您知道目录的 CID,则可以列出其中包含的文件及其各自的 CID(扩展名为ipfs ls
. 这里我列出了上一个示例中 gifs 目录的内容
$ ipfs ls QmTnuLaivKc1Aj8LBf2iWBHDXsmedip3zSPbQcGi6BFwTC\nQmfBAEYhJp9ZjGvv8utB3Yv8uuuxsDKjv9rurkHRsYU3ih 2252675 martian-iron-man.gif\nQmRBHTH3p4W2xAzgLxvdh8VJvAmWBgchwCr9G98EprwetE 1233669 needs-more-dogs.gif\nQmZbffnCcV598QxsUy7WphXCAMZJULZAzy94tuFZzbFcdK 1395067 satisfied-with-your-care.gif\nQmTxnmk85ESr97j2xLNFeVZW2Kk9FquhdswofchF8iDGFg 1154617 stone-of-triumph.gif\nQmcN71Qh56oSg2YXsEXuf8o6u5CrBXbyYYzgMyAkdkcxxK 2322454 thanks-dog.gif\n
Run Code Online (Sandbox Code Playgroud)\n您可以使用 js-ipfs 或 go-ipfs 中的核心 api 以编程方式进行操作。以下是使用文档中的 js-ipfs 从 Node.js 中的本地文件系统添加文件的示例ipfs.addAll(files)
- https://github.com/ipfs/js-ipfs/blob/master/docs/core-api/ FILES.md#从文件系统导入文件
有一个非常有用的视频,介绍如何将文件添加到 IPFS,网址为https://www.youtube.com/watch?v=Z5zNPwMDYGg
\n在这里浏览 js-ipfs https://github.com/ipfs/js-ipfs/tree/master/examples/ipfs-101
\n