For the complete documentation index, see llms.txt. This page is also available as Markdown.

Sistema de archivos

Detrás de las diferentes APIs de contenido en el protocolo Decentraland hay una implementación de un sistema de archivos distribuido. Cada servidor de contenido posee una copia del almacenamiento completo y sincroniza las actualizaciones que recibe con otras instancias.

Los archivos subidos al sistema son inmutables. Una vez desplegados, ni su identificador ni su contenido cambian. Solo pueden actualizarse en el sentido de que se sube una nueva versión y las aplicaciones eligen usarla, mientras que la anterior puede descartarse.

Puedes experimentar con archivos en la práctica sección.

Identificadores de archivos

El sistema de archivos de Decentraland está organizado en un índice plano (es decir, no existe una jerarquía natural de directorios), donde cada archivo es identificado por una cadena única.

Las cadenas identificadoras están prefijadas por codificaciones base32 del hash SHA-256 del contenido del archivo, usando el algoritmo IPFS CID v1 . Se ven así:

bafybeicgclohdfaccu2sqqkzrzuenjxzcry3m5vcb4mpxgucjl3oheq5tq

El prefijo en los primeros bytes indica la codificación, la versión y el tipo de hash del propio identificador.

Por razones históricas, algunas APIs llaman al identificador de archivo hash en lugar de id, pero se refieren a lo mismo. También puedes encontrar identificadores heredados en contenido antiguo que se ven un poco diferentes.

En la práctica, estos detalles no son necesarios para descubrir y descargar contenido. La mayoría de los clientes del protocolo pueden tratar los identificadores como cadenas opacas sin perder funcionalidades.

Toma en cuenta que los identificadores modernos CIDv1 son compatibles con IPFS, dando el mismo CID para el mismo archivo, por lo que IPFS puede usarse como proveedor de archivos.

Propiedad y persistencia

Excepto por snapshots, los archivos almacenados en la red están asociados a una entity propiedad de una cuenta de Ethereum. El propietario es el único autorizado para actualizar la entity y los archivos relacionados.

El protocolo exige que los servidores de contenido siempre almacenen la última versión de una entity y sus archivos, pero pueden elegir si conservan versiones antiguas según su configuración individual.

Descargar archivos

El /contents/<fileId> el endpoint del servidor de contenido puede usarse para descargar cualquier archivo. Sus identificadores se encuentran en el manifestde la entity padre.

Subir archivos

Los archivos no se suben de forma independiente. En su lugar, se empaquetan dentro de entities y se suben durante el despliegue de la entity al servidor de contenido.

Vea la documentación para creadores de contenido para más detalles.

Última actualización