我开始对Web3开发感兴趣了,我想得到一些建议来帮助我完成这一旅程。那么,在这个令人惊叹的教程之后,我在Solana块链上创建了一个令牌,我对如何在Web3前端开发中做些什么有以下问题:
最后一个重要但重要的事件是,我想知道哪些技术、文章、网站等可以帮助我建立这个主题,同时也能了解这些主题?
发布于 2022-03-15 03:37:16
一旦用户在幻影上通过身份验证,是否有可能获得用户的钱包地址?
是的!这可能是。类似于元询问,您可以参考幻影SDK来获取用户的公共钱包地址
关于转移,这是可能的,但是,您必须使用metaplex将您的令牌从一个钱包转移到另一个钱包。
是否有可能获得用户钱包中的令牌数量?
为此,您必须做一些研究和开发,因为这是一种隐私问题,列出所有的钱包令牌的用户。
对于Web3.js参考资料,您可以参考
发布于 2022-03-15 03:58:52
一旦用户连接到幻影,就有可能获得用户的钱包地址吗?
是!使用钱包适配器,您可以检索已连接的publicKey并获取连接的令牌地址。
示例:
const { connection } = useConnection();
const { publicKey } = useWallet();
const tokenAccounts = await connection.getParsedTokenAccountsByOwner(publicKey, { programId: TOKEN_PROGRAM_ID });是否有可能获得用户钱包中的令牌数量?
如果您console.log上面的示例:
const tokenAccounts = await connection.getParsedTokenAccountsByOwner(new PublicKey('Ccyrkw1FdRVsfnt7qptyUXqyffq3i59GSPN1EULqZN6i'), { programId: TOKEN_PROGRAM_ID });
tokenAccounts.value.forEach((accountInfo) => {
console.log(`pubkey: ${accountInfo.pubkey.toBase58()}`)
console.log(`mint: ${accountInfo.account.data["parsed"]["info"]["mint"]}`);
console.log(`owner: ${accountInfo.account.data["parsed"]["info"]["owner"]}`);
console.log(`decimals: ${accountInfo.account.data["parsed"]["info"]["tokenAmount"]["decimals"]}`);
console.log(`amount: ${accountInfo.account.data["parsed"]["info"]["tokenAmount"]["amount"]}`);
console.log("====================")
});
/*
pubkey: ArbSRRSPZ5SqXjyjcip3UUZ55Eqn5AkCP4dHZNRrKBhz
mint: 8HGyAAB1yoM1ttS7pXjHMa3dukTFGQggnFFH3hJZgzQh
owner: Ccyrkw1FdRVsfnt7qptyUXqyffq3i59GSPN1EULqZN6i
decimals: 6
amount: 875471
====================
pubkey: 6JbMNzmX7QrxUEL5RT9TczvTuCjXPFTDRWgCs88atmV8
mint: 4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R
owner: Ccyrkw1FdRVsfnt7qptyUXqyffq3i59GSPN1EULqZN6i
decimals: 6
amount: 330108
====================
pubkey: 9xqnnfeonbsEGSPgF5Wd7bf9RqXy4KP22bdaGmZbHGwp
mint: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
owner: Ccyrkw1FdRVsfnt7qptyUXqyffq3i59GSPN1EULqZN6i
decimals: 6
amount: 199497145
====================
*/假设我的令牌不是在交换,但我有100个单位,我想把50个单位转移到另一个钱包,这是可能的吗?
是的,你也可以在钱包之间转移代币。
let tx = new Transaction().add(
createTransferCheckedInstruction(
tokenAccountXPubkey, // from (should be a token account)
mintPubkey, // mint
tokenAccountYPubkey, // to (should be a token account)
alice.publicKey, // from's owner
50e8, // amount, if your deciamls is 8, send 10^8 for 1 token
8 // decimals
)
);
await sendAndConfirmTransaction(connection, tx, [alice]);我想知道哪些技术,文章,网站等可以帮助我建立这个,也了解这些主题?
在索拉娜食谱上有一堆很棒的材料和例子。否则,我会参考其他用户给出的答案。
https://stackoverflow.com/questions/71476490
复制相似问题