如何获得索拉纳上的“所有者”令牌

2022-01-22 16:28:09 标签 web3web3jssolanasolana-web3js

我正在尝试看看你如何能像在以太坊一样获得代币的“所有者”,而不是在Solana区块链上。

例如,我希望用户只有在他们的虚拟钱包(或其他Solana钱包)上有x令牌时才能访问网站的特定部分。

###如果你想了解一个用户是否拥有一个特定的令牌,你将必须检查他们是否当前拥有该特定铸币厂的令牌账户,并拥有余额>0。

代码如下,检查地址GKNcUmNacSJo4S2Kq3DuYRYRGw3sNUfJ4tyqd198t6vQ拥有的USDC:

import {clusterApiUrl, Connection, Keypair, LAMPORTS_PER_SOL, ParsedAccountData, PublicKey} from '@solana/web3.js';
import {ASSOCIATED_TOKEN_PROGRAM_ID, Token, TOKEN_PROGRAM_ID} from "@solana/spl-token";
const publicKey = new PublicKey("GKNcUmNacSJo4S2Kq3DuYRYRGw3sNUfJ4tyqd198t6vQ");
const mint = new PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v");
const connection = new Connection(clusterApiUrl('mainnet-beta'));
const associatedAddress = await Token.getAssociatedTokenAddress(
    ASSOCIATED_TOKEN_PROGRAM_ID,
    TOKEN_PROGRAM_ID,
    mint,
    publicKey
  );
console.log(associatedAddress.toBase58());
const tokenAccountInfo = await connection.getParsedAccountInfo(associatedAddress);
console.log((tokenAccountInfo.value?.data as ParsedAccountData).parsed.info.tokenAmount.amount);
阅读全文

▼ 版权说明

相关文章也很精彩
推荐内容
更多标签
相关热门
全站排行
随便看看

错说 cuoshuo.com —— 程序员的报错记录

部分内容根据CC版权协议转载;网站内容仅供参考,生产环境使用务必查阅官方文档

辽ICP备19011660号-5

×

扫码关注公众号:职场神器
发送: 1
获取永久解锁本站全部文章的验证码