【问题标题】:IPFS: base64-encoded image not showing as imageIPFS:base64 编码的图像未显示为图像
【发布时间】:2021-07-17 21:30:00
【问题描述】:

我有一个简单的函数,它尝试对图像进行 base64 编码并将其上传到 IPFS:

async function toIPFS() {
  const node = await IPFS.create()
  const data = fs.readFileSync('./src/assets/logo.png', 'base64').toString('base64')
  const results = await node.add(data)
  console.log(results.cid.string)
}

但是,当我实际检查 the hash 时,它显示为一个长字符串:

iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHB...etc

如何上传图片以使其实际显示为图片?我错过了什么?

我从来没有处理过图片,如果这是一个菜鸟问题,请原谅:)

【问题讨论】:

  • 你想在哪里显示图片?
  • 如果要显示为图像,为什么要base64编码?

标签: javascript node.js ipfs js-ipfs


【解决方案1】:

您看到返回的是编码为 base64 的文件,如果您想存储图像本身以供以后检索,您可以这样做:

async function toIPFS() {
     const node = await IPFS.create()
     const data = fs.readFileSync('./src/assets/logo.png')
     const results = await node.add(data)
     console.log(results.cid.string)
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-01
    • 2015-03-07
    • 1970-01-01
    • 2017-04-30
    • 2015-08-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多