IPFS:base64 编码图像未显示为图像

IPFS: base64-encoded image not showing as image

我有一个简单的函数,它尝试对图像进行 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 的文件,如果你想存储图像本身以供以后检索,你可以这样做:

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)
}