是否有办法在创建后更改Hedera NFT元数据?
我的目标是实现与其他NFT项目中通常使用的类似的NFT铸造流程,即首先拥有预揭示的元数据,并在揭示的当天将其更改为实际的元数据。
分类账上的NFT元数据字段是不可变的。有一个关于动态nft的社区提案,您可能会感兴趣。
还有其他的,也许是"粗糙"的方法来更改NFT的元数据(更改URI本身的内容),但这可能会给用户带来一些信任问题。
可以刻录和重新刻录NFT,假设您的tokenId (NFT集合)有一个支持刻录/刻录操作的供应密钥。请注意,这将改变非功能性测试的序列号。
如果刻录对你来说是一个可行的选择,这里有一些代码可以做到这一点:
let tokenBurnTx = await new TokenBurnTransaction()
.setTokenId(tokenId)
.setSerials([nftSerial])
.freezeWith(client)
.sign(supplyKey);
let tokenBurnSubmit = await tokenBurnTx.execute(client);
let tokenBurnRx = await tokenBurnSubmit.getReceipt(client);
console.log(`nBurn NFT with serial ${nftSerial}: ${tokenBurnRx.status} n`);