Ejemplos de CLI
Esta práctica demuestra cómo interactuar con la API de contenido en una terminal. Usaremos la instancia de la Fundación Decentraland en peer.decentraland.org, y todo lo que necesitas es la curl herramienta de línea de comandos.
Esto es lo que haremos:
Consultar el estado del content server.
Localiza y descarga una instantánea con una lista de entities.
Obtén el manifiesto de una Entity.
Descarga uno de los archivos de la Entity.
Empecemos consultando el estado del servidor usando /about:
curl "https://peer.decentraland.org/about"{
"healthy": true,
"content": {
"healthy": true,
"version": "6.5.0",
},
// ... más información del servidor (feature flags, versiones, rutas, etc.)
}Parece que el servidor está en línea y funcionando normalmente ("healthy": true), y nos está dando información sobre la versión que implementa para cada conjunto de funciones, además de algunas opciones de configuración de la instancia.
Nos interesa descargar contenido, así que exploremos los disponibles instantáneas para hacernos con algunos identificadores a través de /content/snapshots.
Cada elemento del array describe un instantánea. Vamos a conseguir una hash y descargar el archivo desde el /content/contents endpoint.
Podemos comprobar que descargamos el archivo correcto en un formato que conocemos, mirando la primera línea:
¡Genial! Ahora tenemos un resumen local de todas las entities que se capturaron en esa instantánea. Tomemos la primera de la lista (la segunda línea del archivo), una perfil:
Esta es información que podríamos guardar. Usaremos el entityId para descargar el manifiesto JSON de la Entity, pero conservar el pointer listado es una buena idea si queremos localizar esta Entity y cualquier versión actualizada en el futuro.
También tenemos el cadena de autenticación utilizado para firmar esta Entity, y podríamos validar las firmas listadas para verificar la autenticidad de cualquier archivo relacionado que descarguemos.
Vamos a hacernos con el manifiesto de la Entity. Recuerda, el entityId es el identificador de archivo que necesitamos, y podemos usar el /content/contents endpoint de nuevo:
Esta perfil Entity contiene toda la información que World Explorers usa para renderizar y animar a un jugador. Si nos interesa obtener uno de los files empaquetados, podemos seguir usando el /content/contents endpoint.
Si miramos el contenido campo, podemos ver el hash del archivo llamado internamente body.png. Vamos a obtenerlo:
Podemos abrir este png archivo en un visor de imágenes o navegador web, y echar un vistazo al trabajo del autor. ¡Genial!
Última actualización