CLI 示例
本练习演示如何在终端中使用 content API。我们将使用 Decentraland Foundation 的实例: peer.decentraland.org,而你只需要 curl 命令行工具。
我们将这样做:
查询内容服务器的状态。
查找并下载每日 快照 其中包含一个实体列表。
获取某个实体的清单。
下载该实体的一个文件。
让我们先使用以下命令查询服务器状态: /about:
curl "https://peer.decentraland.org/about"{
"healthy": true,
"content": {
"healthy": true,
"version": "6.5.0",
},
// ... 更多服务器信息(功能标志、版本、路径等)
}看起来服务器已正常启动并运行("healthy": true),并且向我们提供了其为各个功能集实现的版本信息,以及该实例的一些配置选项。
我们想下载一些内容,所以让我们先看看可用的 快照 ,通过以下方式获取一些标识符: /content/snapshots.
数组中的每一项都描述了一个 快照。让我们获取一个 hash 并从以下位置下载该文件: /content/contents 端点为你提供所有已知收藏集的列表。
我们可以通过查看第一行,确认下载的是我们熟悉格式的正确文件:
太好了!现在我们已经有了该快照中捕获到的所有实体的本地摘要。让我们取列表中的第一个(文件中的第二行),一个 个人资料:
这些信息我们可以保存。我们将使用 entityId 来下载该实体的 JSON 清单,但保留列出的 指针 如果我们想在未来定位这个实体及其任何更新版本,这是个好主意。
我们还有 认证链 用于签署该实体的内容,我们也可以验证列出的签名,以确认我们下载的任何相关文件的真实性。
让我们拿到该实体的清单。记住, entityId 是 文件标识符 我们需要的内容,而我们可以使用 /content/contents 端点再次获取:
这个 个人资料 实体包含 World Explorers 用来渲染和动画化玩家的全部信息。如果我们想获取其中一个打包文件,可以继续使用 /content/contents 端点为你提供所有已知收藏集的列表。
如果我们查看 内容 字段,我们就能看到 hash 内部名为以下文件的 body.png。让我们下载它:
我们可以打开这个 png 文件,用图片查看器或网页浏览器查看作者的作品。不错!
最后更新于