5

我正在使用 IPFS 进行这个项目,我正在尝试创建一个网站,允许用户直接从浏览器上传文件到 IPFS。我的目标是该网站将是一个前端网站,但是每当我将文件添加到 IPFS 并检查它的哈希值时https://gateway.ipfs.io/ipfs/hash-here什么都没有发生,这让我认为文件可能没有上传到 IPFS,因为我没有运行它在我的本地机器上。这个对吗?

const Buffer = require('safe-buffer').Buffer;

export default function uploadFiles(node, files) {

    let reader = new FileReader();

    reader.onloadend = () => {

        let byteData = reader.result.split('base64,')[1];
        let fileData = Buffer.from(byteData);

        node.files.add(fileData, (err, res) => {

            if (err) {
                throw err
            }

            let hash = res[0].hash
            console.log(hash);  ///////prints a hash that isnt visible on 
                                //gateway

            node.files.cat(hash, (err, res) => {
                if (err) {
                    throw err
                }
                let data = ''
                res.on('data', (d) => {
                    data = data + d
                })
                res.on('end', () => {
                    // console.log(data);
                    // console.log(atob(data));
                })
            })

        });

    }

    reader.readAsDataURL(files['0']);

};
4

1 回答 1

3

您是否在浏览器中运行 js-ipfs 节点?您是否有机会查看 js-ipfs 存储库中示例文件夹中的示例?网址在这里:https ://github.com/ipfs/js-ipfs/tree/master/examples

如果您将文件添加到您的节点并且该节点已打开,IPFS 网关节点将能够从您的浏览器节点中找到内容。

于 2017-08-22T14:33:04.960 回答