2 分钟
子图 ID vs 部署 ID
Subgraph 是用Subgraph ID标明的,Subgraph 的每一版本都用部署ID标明。
当查询子图时,可以使用 ID。 虽然一般认为使用部署ID是因为它能够指定Subgraph的特定版本。
以下是这两个ID之间的一些关键区别:
部署 ID
部署ID是编译清单文件的 IPFS 哈希值, 它是指IPFS上的其他文件,而不是计算机上的相对URL。 例如,编译后的清单可以访问:https://ipfs.thegraph.com/ipfs/QmQKXcNQRdUvNRMGJiE2idotu9fo5F5MRtKztH4WyKxED
。 要更改部署ID,只需更新清单文件, 例如修改描述字段如子图文档。
当使用Subgraph的部署ID进行查询时,我们正在指定要查询的Subgra版本。 使用部署 ID 查询特定的 Subgraph 版本会导致更加复杂和强大的设置,因为正在查询的 Subgraph 版本的完全控制。 然而,这导致每次发布新版Subgra时,都需要手动更新查询码。
使用部署ID 的示例终点:
https://gateway-arbitrum.network.thegraph.com/api/[api-key]/deployments/id/QmfYaVdSSekUeK6expfm47tP8adg3NNdEGnVExqswsSwaB
子图 ID
子图ID 是子图的唯一标识符。它在所有版本的子图中保持常数。 建议使用Subgraph ID查询最新版本的 Subgraph ID,尽管有一些警告。
请注意,使用 Subgrap ID 查询可能会导致旧版本的 Subgraph 响应查询,因为新版本需要时间同步。 此外,新版本可能会引入破解模式更改。
使用Subgraph ID的示例终点: https://gateway-arbitrum.network.thegraph.com/api/[api-key]/subgraphs/id/FL3ePDCBbShPvfRJTaSCNnehiqxsPHzpLud6CpbHoeKW