Обзор
Сжатые NFT хранятся как листья в конкурентном дереве Меркла, а не в собственных аккаунтах. Чтобы передать, сжечь, делегировать или обновить такой NFT, транзакция должна доказать, что лист находится в дереве.getAssetProof возвращает это доказательство: текущий корень, хеши соседних узлов от листа до корня и хеш листа.
Параметры
string
обязательно
ID сжатого актива (base-58).
Ответ
object
Примеры кода
Запрос
Ответ
TypeScript
Передайте доказательство в инструкцию Bubblegum в качестве оставшихся аккаунтов (remaining accounts):Примечания
- Доказательство действительно только до изменения дерева. Получайте его непосредственно перед сборкой транзакции и запрашивайте повторно, если транзакция завершилась ошибкой из-за несовпадения корня.
- Деревья с канопи (canopy) хранят верхние уровни ончейн, поэтому вы можете отбросить соответствующее количество узлов с конца
proof, чтобы сэкономить место в транзакции.