问题标签 [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 回答
87 浏览

solana - 如何检索 Solana 代币交换计划的市场 ID?

marketId在 Solana 主网上拥有两个 spl 代币的铸币厂地址,我需要找到 Solana 上所有可能的市场(即在以下代码片段中)的公钥,以从以下位置获取代币交换信息:

我在 github 或其他任何地方都找不到任何存储库(类似于 Raydium 或 Serum lp 地址)。我在哪里可以找到 spl 代币交换计划的流动市场列表?和/或是否有任何其他方法可以根据代币铸造地址计算或检索代币交换信息?

0 投票
1 回答
198 浏览

node.js - React、Web3.js 和 Metaplex:无法从 @metaplex/js 导入 `programs.metadata.Metadata`

问题

尝试在此处遵循“您的第一个请求”示例:https ://docs.metaplex.com/sdk/js/getting-started#your-first-request

示例中提到的模块不包含所需的数据。

对于上下文,我正在使用此示例来开发在这些说明的第 5 步中解释的解决方案:https ://gist.github.com/creativedrewy/9bce794ff278aae23b64e6dc8f10e906

复制步骤

第 1 步)我@metaplex/js通过以下方式安装软件包:yarn add @metaplex/js

programs步骤 2)我通过放置从模块导入import { programs } from '@metaplex/js';.

第 3 步)我尝试Metadata通过以下方式从程序中解压缩:const { Metadata } = programs.metadata;

在这个阶段,如果我执行npm run start或者yarn run start我看到属性未定义Metadata的错误。programs.metadata当我查看时,node_modules/@metaplex/js/我发现错误是正确的。

模块中唯一提到元数据的功能是在您拥有 URL 后用于查找元数据的函数。我所处的阶段是尝试检索 URL,因此这个包没有用,尽管它是文档中唯一提到的包。

0 投票
3 回答
6091 浏览

solana - 在 Solana 中铸造 NFT。交易费用

我已经准备好用于在 Solana 网络中铸造 NFT 集合的 Candy Machines,并且我正在使用其 Devnet 测试 Mint 过程。即使您可以找到很多关于如何准备糖果机的教程,但有些问题我仍然无法找到正确的答案,我认为这可能对其他用户有用。

  1. 铸币厂需要一个一个吗?如果用户想购买,例如 50 个 NFT,是否需要批准 50 次交易并支付 50 倍的费用(使用 Phantom 或任何其他钱包)?我认为是的,因为每个铸造的 NFT 都是一份新合约。我对吗?
  2. 我正在使用我的 Phantom 钱包在 Devnet 中成功进行铸币,以确定费用。对于单个 NFT,此时钱包反映的交易费用为 0.012SOL = 2.16$。根据 Solana 的交易成本,这似乎真的很贵。这些费用是如何计算的?这是用户为铸造 1 NFT 支付的正常费用吗?
0 投票
0 回答
79 浏览

solana - 在 Solana 上发送 Serum DEX 新订单指令 (makeNewOrderV3Instruction) 时出错

我正在尝试在 Serum DEX V3 上发出订单请求:

然后:

但我面临以下错误:

我仔细检查了血清 SDK 所需的所有输入帐户和参数以进行新的订单指令,但我无法解决问题。

0 投票
1 回答
701 浏览

javascript - Solana:使用 Js 从 NFT 令牌中获取 Candy Machine 信息

我试图找出特定 nft 的糖果机 ID 或地址是什么。

到目前为止,我已经尝试使用@solana/web3.js 循环访问钱包帐户

还尝试了 metaplex/js,我得到了更多的信息,比如创作者:

但我没有找到糖果机信息。

0 投票
0 回答
34 浏览

javascript - Buffer-Layout 目录没有 'src' 子目录

使用buffer-layout使用任何依赖项时,我都遇到了问题。问题是这个使用一些文件的库存在于一个名为src. 但是,当我尝试列出它的子目录时,我发现那里没有任何调用src

这导致了很多问题,例如No such file or directory.

我尝试删除node_modules然后npm i。我试过了npm r buffer-layout && npm i buffer-layout。没有什么能解决问题。

笔记:

  1. 我正在开发一个由npx create-react-app.
  2. 每当我像这样导入此依赖项时,我都会遇到问题import { TOKEN_LIST_URL } from "@jup-ag/core";
  3. 我只有在这样做时才会遇到这个问题npm start。没有问题npm run-script build
  4. 我的package.json样子:

请问有什么想法吗?

0 投票
1 回答
163 浏览

javascript - Solana JSON RPC API getBalance 方法总是返回 0

我正在尝试从虚拟钱包中获取 SOL 余额。钱包里有 > 0 SOL,所以当我打电话时,我知道有问题。这是我的代码:

我究竟做错了什么?

0 投票
1 回答
75 浏览

solana - Solana:在给定 TransactionSignature 的情况下恢复源和目标公钥

给定交易签名,是否有 JS API 可以从 Pubkey 和 toPubkey 中恢复?

0 投票
1 回答
49 浏览

blockchain - 为 Solana 代币创建一个智能合约

我在 Solana 区块链上创建了一个代币,但我想将其中的一部分设计给另一个发行人,该发行人将启动与我不同的 ICO。谁能对此有所了解?

0 投票
1 回答
220 浏览

solana - 如何使用 Python (PyNaCl) 验证由 Solana 钱包适配器 (javascript) 签名的消息

我使用Solana 的钱包适配器示例签署了一条消息:

  • 使用的公钥:DKpHyR1WjWE23E3xizPUhefZKmpMrMXNBVfoxQ7WXCRR
  • 留言签名:hello
  • 收到签名:3EWDdtU1w8pWkr6fg8faJvKn1wBZmNjgf5kUx4Pn5gw4HeBPYVDm7cTHNqpRVMami6yX36jdaeZacv9GXR19Jzye

但我无法使用 Python 3.9 和PyNaClSolana-py验证签名消息。我尝试了以下方法:

但验证返回:nacl.exceptions.BadSignatureError: Signature was forged or corrupt.

有人知道出了什么问题吗?会不会是编码问题?似乎 JS 使用以下字节类型:

在python中:

我需要在 Python 上使用一些不同的编码吗?