我正在尝试在前端铸造一些令牌,如下所示:
let transaction = new Transaction();
let mintToInstruction = Token.createMintToInstruction(
splToken.TOKEN_PROGRAM_ID,
myTokenMint.publicKey,
userAccount.publicKey,
airdropAdmin.publicKey,
[],
sendAmount.toNumber()
)
transaction.add(mintToInstruction);
let conn: Connection = ctx.connection;
const tx1 = await conn.sendTransaction(
transaction,
[airdropAdmin]
);
Run Code Online (Sandbox Code Playgroud)
但我收到一个隐晦的错误:
Error processing Instruction 0: invalid account data for instruction
Run Code Online (Sandbox Code Playgroud)
发生了什么?
您传入的帐户之一不是令牌计划预期的帐户。
任何一个:
userAccount是不正确的。这必须是令牌帐户,您是否使用了用户的系统帐户?myMintAccount是不正确的。这是真正的代币吗?考虑记录这些公钥并将它们放入资源管理器中。顶部是否userAccount写着“令牌帐户” ?上面有myMintAccount写“Token Mint”吗?
invalid account data for instruction当程序无法对unpack您传入的帐户内的数据运行时,通常会发生这种情况。
所以要么是Account::unpack失败,要么是Mint::unpack失败。
| 归档时间: |
|
| 查看次数: |
4555 次 |
| 最近记录: |