Para usar IPFS en NodeJS, necesito el módulo ipfs . Para conectar un nodo IPFS intento:
const IPFS=require("ipfs"); const node= await IPFS.create();Después de eso, cuando ejecuto NodeJS en PowerShell, aparecen los siguientes mensajes:
Swarm listening on /ip4/192.168.1.100/tcp/4002/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Swarm listening on /ip4/192.168.88.1/tcp/4002/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Swarm listening on /ip4/192.168.49.1/tcp/4002/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Swarm listening on /ip4/127.0.0.1/tcp/4002/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Swarm listening on /ip4/127.0.0.1/tcp/4003/ws/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Creo que los mensajes anteriores mencionan que me conecté a un nodo IPFS local. Si mi pensamiento es cierto, puede deberse a IPFS.create() . Entonces, debería poner una puerta de enlace como argumento para conectar un nodo global. Vi algunas puertas de enlace públicas IPFS en Public Gateway Checker pero no sé cómo poner una muestra en IPFS.create() ;
Por favor guíame:
¿Tengo razón sobre los mensajes en PowerShell?
¿Cómo usar una puerta de enlace IPFS global en mi código?
Todo mi código NodeJS:
const IPFS=require("ipfs"); async function register(){ const node=await IPFS.create(); node.add("Main Content!").then(function(ipfsHash){console.log(ipfsHash)}); }Resultado completo en PowerShell:
Swarm listening on /ip4/192.168.1.100/tcp/4002/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Swarm listening on /ip4/192.168.88.1/tcp/4002/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Swarm listening on /ip4/192.168.49.1/tcp/4002/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Swarm listening on /ip4/127.0.0.1/tcp/4002/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp Swarm listening on /ip4/127.0.0.1/tcp/4003/ws/p2p/12D3KooWCGvmbySrpdCVKACJPjZeeUiMR6gSQffa7W3gWZLSGBxp { path: 'QmUaTPt2Uus46Cgo4YMKze8PpHrCKvZ1YXD2zpffNt8U9S', cid: CID(QmUaTPt2Uus46Cgo4YMKze8PpHrCKvZ1YXD2zpffNt8U9S), size: 21, mode: 420, mtime: undefined }¡Muchas gracias!
Cuando llamas a create() , el cliente se conecta a un nodo local con la URL http://localhost:5001 . Para conectarse a otra puerta de enlace HTTP a un nodo global, simplemente pase la URL de la puerta de enlace.
const client = await IPFS.create("https://<your-preferred-gateway>"); const { cid } = await client.add("Your content"); Ver también: create opciones