设置元数据
9

在NFTEX平台上制作的资产可能包含基于ERC721元数据JSON模式的元数据。我们正在为该模式添加一个可选的格式化标准,以提高需要管理成千上万项目元数据的游戏的效率。

在元数据方面要注意以下要求。

  1. 链接(包括元数据和图像)必须对机器人公开。
  2. uri必须适当地设置为请求的文件。
  3. 图像必须是有效的图像文件(图像必须显示)。
  4. JSON必须符合JSON RFC标准,如果它无论如何都不符合,那么它就不会被加载。

您可以查看以下部分,深入了解ERC-1155元数据。

在NFTEX平台上设置元数据。

您可以使用NFTEX平台为资产设置自己独特的元数据。一旦您创建了一个项目和一些资产,您会发现您可以"编辑"新创建的资产。

您只需选择一个名称、一个资产描述和一张图片(建议尺寸为1000x1000(px))。

检查下面的例子。

托管的元数据

您的元数据将由NFTEX托管,您可以随时更改您的资产的元数据。

完成后,将向您的钱包发送设置Uri通知请求。

你需要在钱包中接受请求,Set Uri交易将在区块链上广播。

高级编辑

此外,如果您不希望使用NFTEX托管您的文件,您还可以在其他地方托管您自己独特的资产元数据。

许多游戏开发者通常会使用他们自己的托管网站来存储他们的资产元数据,在这方面,我们使用NFTEX平台上的高级编辑器来满足。

你可以选择为你的资产设置一个名称。最后,您需要将.json文件粘贴到"元数据URI"字段中,并保存更改。一旦完成,一个设置URI的通知请求将被发送到你的钱包。

你需要在钱包中接受请求,Set Uri交易将在区块链上广播。

一旦成功,您的独特元数据将出现在您的资产上。

高级编辑

注意:您可以在任何时候更改您的独特元数据,只需粘贴一个新版本的.json文件并点击"保存Uri"。

JSON格式

我们将提供一个简单的例子,说明你的独特元数据是如何看起来的。你需要的主要3个因素是资产名称、描述和图片。

属性名称、描述和图像遵循ERC-721元数据模式。属性JSON对象中的值将在客户端应用程序中呈现,如NFTEX WalletNFTEXX

示例格式:

JSON
{
"name": "Asset Name",
"description": "Lorem ipsum",
"image": "https:\/\/s3.amazonaws.com\/your-bucket\/images\/{id}.png"
}

使您的元数据无效

有时由于任何原因,如果你的元数据不加载或加载时间较长,我们已经实现了无效元数据突变。

GraphQL
mutation InvalidateTokenMetadata($id: String!) {
InvalidateTokenMetadata(id: $id)
}

<inline-code>Id<inline-code>是资产的token ID。</inline-code>

这个突变将指示平台使元数据无效,从而直接从你的服务器上再次获取。

请注意,在失效后,新的元数据可能需要几分钟的时间才能加载。

此外,请注意,这个突变只能运行一次,每个令牌,每几分钟一次。

您只能在属于您拥有 minter 角色(或更高)的应用程序的标记上运行此突变。

特定元数据URI

任何令牌ID都可以有一个元数据URI,可以通过调用ERC-1155合约上的uri(_id)来检索。

如果单个非可变令牌 ID 已定义元数据 URI,则客户端应用程序应使用该 URI。如果没有定义,客户端应用程序应该调用基本令牌ID上的uri(_id)来检索整个非可变令牌集的默认URI。

默认URI

A Non-Fungible token that defines a Default URI in its base token has the option of using an {id} placeholder in the URI itself. This will get replaced with the distinct ID when accessing NFTs.

例子
yoursite.com/{id}.json -> yoursite.com/bd4818c04f57a2ebc473d74ee06d6e0600000000000000000000000000000001.json

图片

If the Default URI contains an image property that in turn contains the {id} placeholder, the image URL will be used as the default image for all tokens of this type.

例子
yoursite.com/images/{id}.jpg -> yoursite.com/images/bd4818c04f57a2ebc473d74ee06d6e0600000000000000000000000000000001.jpg

根据需要,图片属性也可以是一个没有占位符的静态URI。

在GraphiQL中,你可以使用下面的突变为项目设置URI。

GraphQL
mutation SetItemUri($identityId: Int!, $itemUriData: SetItemUriInput!) {
CreateNFTEXRequest(identity_id: $identityId, type: SET_ITEM_URI, set_item_uri_data: $itemUriData) {
id
encodedData
state
}
}

注意:设置URI是一项区块链交易,您需要在NFTEX钱包的"请求"选项卡下批准,才能看到元数据出现在您的资产上。

上一页
接下来
本页