我正在研究 ipfs 领域以启动 NFT 项目,以便我使用 ipfs-http-client npm 包(npm i ipfs-http-client)的前端。
我的简单测试代码如下:
const { create } = require('ipfs-http-client')
const ipfsClient = create("https://ipfs.infura.io:5001/api/v0")
const cid = await ipfsClient.add(urlSource("https://camo.githubusercontent.com/e92540c54c9b47f684b0e4dd5442ebe20ddbbe2e9699c29ce8400c055fa46e6a/68747470733a2f2f697066732e696f2f697066732f516d65364b4a644b637038355459624c78754c56376f517a4d694c72656d4437484d6f584c5a456d676f36526e682f6a732d697066732d737469636b65722e706e67"))
//https://ipfs.io/ipfs/QmUQeyhy7yY9yZUXKbKLCnPAoGKCeuhH3XxzprcJfYiz1h
到目前为止一切顺利,没有任何问题,数据可以在 ipfs 网络上访问。我认为我的问题是非常概念性和基本的。
显然,上传到 ipfs 的图像存储在 ipfs 节点中。只要至少有一个节点保存图像数据,图像就可以访问。或者我们需要固定它。否则,将不再看到数据。我从以下链接中找到了这篇文章,说使用 infura API 使用默认 pin 执行 add()。我不确定它是否正确,因为我没有为此操作提供任何 infura API 密钥。还是免费服务?