我一直在尝试使用下面的代码从 Solana 钱包地址获取 Solana 钱包中特定令牌的 spl-token 帐户地址,但在获取我正在寻找的结果时遇到问题。我跑:
const web3 = require('@solana/web3.js');
(async () => {
const solana = new web3.Connection("https://api.mainnet-beta.solana.com");
//the public solana address
const accountPublicKey = new web3.PublicKey(
"2B1Uy1UTnsaN1rBNJLrvk8rzTf5V187wkhouWJSApvGT"
);
//mintAccount = the token mint address
const mintAccount = new web3.PublicKey(
"GLmaRDRmYd4u3YLfnj9eq1mrwxa1YfSweZYYZXZLTRdK"
);
console.log(
await solana.getTokenAccountsByOwner(accountPublicKey, {
mint: mintAccount,
})
);
})();
我正在寻找返回中的令牌帐户地址,6kRT2kAVsBThd5cz6gaQtomaBwLxSp672RoRPGizikH4。我得到:
{上下文:{槽:116402202},值:[{帐户:[Object],pubkey:[PublicKey]}]}
我可以使用 .value[0].pubkey 或 .value[0].account 深入了解这一点,但最终无法获得我正在寻找的信息,这是 6kRT2kAVsBThd5cz6gaQtomaBwLxSp672RoRPGizikH4 的返回
有谁知道出了什么问题?(注意我不想使用 getOrCreateAssociatedAccountInfo() 方法,我试图在不处理钱包密钥对的情况下获取令牌帐户地址)