问题标签 [solana-web3js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1126 浏览

javascript - 发送交易时未找到 Blockhash

使用 Solana web3 发送交易时,有时会显示以下错误:
Error: failed to send transaction: Transaction simulation failed: Blockhash not found

除了重试x次之外,处理此错误的正确方法是什么?
有没有办法保证在发送交易时不会发生这个问题?

这是我如何发送交易的示例:

我该如何改进以避免Blockhash not found错误?

0 投票
0 回答
65 浏览

javascript - Metaplex SDK JS 烧币功能参数中的“mint”键是指什么?

我正在尝试使用 javascript Metaplex SDK 在 Solana 网络上刻录一个令牌(肯定是铸造的并且存在)。

他们的代币销毁功能(写在底部)接受这个接口的一个对象作为参数:

但是他们的文档中没有任何地方准确解释“薄荷”字段代表什么。我已经尝试过代币的公共地址(我认为这是“代币”字段的用途)、铸币局地址和更新地址,但它们似乎都不起作用。

这是功能:

0 投票
0 回答
325 浏览

nft - How to mint NFT in Magic Eden by rpc or web3

I want to know about mint method in Magic Eden.
In Candy Machine we can mint NFT by web3 like this.

How can I do this in Magic Eden.

0 投票
2 回答
281 浏览

solana - 在给定 Solana 钱包地址的情况下获取代币账户的地址

我一直在尝试使用下面的代码从 Solana 钱包地址获取 Solana 钱包中特定令牌的 spl-token 帐户地址,但在获取我正在寻找的结果时遇到问题。我跑:

我正在寻找返回中的令牌帐户地址,6kRT2kAVsBThd5cz6gaQtomaBwLxSp672RoRPGizikH4。我得到:

{上下文:{槽:116402202},值:[{帐户:[Object],pubkey:[PublicKey]}]}

我可以使用 .value[0].pubkey 或 .value[0].account 深入了解这一点,但最终无法获得我正在寻找的信息,这是 6kRT2kAVsBThd5cz6gaQtomaBwLxSp672RoRPGizikH4 的返回

有谁知道出了什么问题?(注意我不想使用 getOrCreateAssociatedAccountInfo() 方法,我试图在不处理钱包密钥对的情况下获取令牌帐户地址)

0 投票
1 回答
523 浏览

solana - 获取钱包中 Solana 代币的余额和所有自定义代币列表

我实际上被困在连接幻像钱包的第一步。我正在尝试执行以下步骤。

  1. 连接到幻影钱包
  2. 获取公钥
  3. 获取所有代币的余额
  4. 执行买/卖

我可以使用以下代码连接到虚拟钱包。我不确定该过程的下一步是否是获取公钥,以便我可以找到所有代币的余额作为帐户的一部分。

const balance = connection.getBalance(publicKey); 上述方法是我从文档中找到的,但我不确定如何获取将钱包连接到网站的最终用户的 publicKey。

const connection = new solanaWeb3.Connection(solanaWeb3.clusterApiUrl("mainnet-beta")) console.log(connection);

0 投票
1 回答
257 浏览

solana - 如何查看网站访问者在其 Phantom 钱包中拥有哪些 NFT

我在 Solana 区块链上创建了一些 NFT,现在将它们放在我的 Phantom 钱包中。

我将如何创建一个网站来检查用户的钱包以查看他们有哪些 NFT,例如让它们在我可能创建的基于网络的游戏中可用?

我在 Phantom 文档中看不到任何关于此的信息,但它必须是可能的,因为像 Solsea 这样的网站会这样做。

任何指针表示赞赏!

0 投票
1 回答
356 浏览

solana - 有没有办法从 Solana 区块链实时获取交易数据?

我希望能够实时“收听” Solana 上特定 NFT 的交易,这可能吗?

我已经设法为以太坊做到了这一点,使用 web3、哈希地址和 ABI,它们允许我们监听 NFT 合约中的任何 NFT 交易(例如任何 CryptoPunk 交易),Solana 是否有可能做类似的事情?

我知道 solscan.io 提供了我需要的大部分数据(所以我可以从那里抓取),但是有没有办法直接从我自己的计算机(如以太坊)上进行操作?

0 投票
0 回答
28 浏览

solana-web3js - getTokenAccountsByOwner - 奇怪的结果?

我使用 SPL 创建了一个令牌。我已经在测试网上的钱包地址中铸造了一些供应

代币地址:668JcT5AiLYNi8XVaDNntTaLWzuQ8EnbBzA9zSmKbipW(https://explorer.solana.com/address/668JcT5AiLYNi8XVaDNntTaLWzuQ8EnbBzA9zSmKbipW?cluster=testnet

收款人钱包地址:A9CCmocX2jNXMFuqqHg6uxT4sptFTTws3qXn5tTo5sy9 ( https://explorer.solana.com/address/A9CCmocX2jNXMFuqqHg6uxT4sptFTTws3qXn5tTo5sy9/tokens?cluster=testnet )

在收件人的代币持有部分,我可以看到余额为 0.026203001

同时回到我的 React 前端,我试图显示收件人地址持有的各种 SPL 代币的余额

但我得到一个奇怪的响应,显示灯的值为 2039280(见下文)。检索 .026203001 值的正确方法是什么

0 投票
1 回答
108 浏览

javascript - 未捕获(承诺中)错误:需要交易费用付款人

当我尝试使用幻像钱包执行此操作并响应应用程序时出现此错误

在此处输入图像描述

0 投票
1 回答
428 浏览

javascript - 如何使用虚拟钱包和 solana web3js 转移 NFT spl-token

我可以使用此代码使用幻影钱包将 Solana 从一个帐户转移到另一个帐户

但我想知道如果我有 nft 铸造地址,我该如何转移 NFT?