问题标签 [bsc]
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.
solidity - 可靠地从智能合约内部发送 BNB
我需要从我的代币合约中可靠地转移 BNB,有人可以帮忙吗?在 bsc 网络上。
blockchain - 如何在 Pancakeswap 上进行无延迟购买代币?
我知道有人可以在 Pancakeswap 上毫不拖延地抢购新的代币,使用他们自己的合约,比我们在 pancake 上手动执行要快得多,例如,LP 池在区块 13460029 的高度添加。然后他们可以使用合约在同一个区块13460029购买代币。我想学习合约,有人有这个合约的相关资料,或者相关的源合约学习吗?
transactions - 在发送交易之前如何获得估计的gas?
您如何从“swapExactETHForTokens”函数中获得“估计气体”?如图metamask(之前可以接受购买)
币安智能链 (BSC)
从 pancakeswap 合约(https://bscscan.com/address/0x10ed43c718714eb63d5aa57b78b54704e256024e#writeContract)中,您可以使用“swapExactETHForTokens”购买代币,在功能编号 14 中您可以使用“swapExactTokens”出售代币
当您在想要买入或卖出时尝试进行交易并且无法继续进行时,则显示gas费用为“0.3”或“0.4”,这表明存在错误(并且显然不必接受)
在此示例中,这是因为我尝试在代币中没有定义价格/BNB 中没有流动性时购买代币,因此显示 0.3 bnb 的汽油费(错误)
我通过 BOT 自动“购买”和“出售”,它使用上述功能帮助我执行这些过程。如何获得“估计气体”的这个值,如“Metamask”中的示例所示?但使用 web3 或 ethers!
我在 ethers 中尝试了“estimateGas”,但它返回了一个正常的气体值,与元掩码为 0.3 bnb 的示例不同
显然我做错了:(请帮忙!!
smartcontracts - 无法与 BSC 主网中的合约交互,但在测试网中成功(但仍然是标准传输)
我可以通过 sendSignedTransaction 将原始交易发送到 BSC 测试网上的合约地址,它成功了,但这只是一个标准交易;这不是我想要的合同电话。
但是在 BSC 主网上,它总是失败并出现错误:警告!合约执行过程中遇到错误[执行恢复]
请帮我检查下面的代码,然后告诉我哪里有问题,任何评论,回复或猜测欢迎;非常感谢。
对于 testnet,它总是成功,但它是一个标准交易,链接到 image。虽然我想与合同互动,但结果应显示与(至)互动的字段
对于 mainet,如果我在web3.eth.estimateGas中使用_signEncoded它会返回错误:执行恢复:无效签名,我必须使用_sign发送交易,但它仍然总是失败并出现错误警告!合约执行过程中遇到的错误 [执行恢复] 链接到图像
python-3.x - Web3 发送原始交易 ValueError 无效类型 不支持交易类型
我正在尝试通过与智能合约的交互发送已签名的交易,但在发送原始交易时一切都崩溃了。
我的代码如下
代码在最后两行都返回错误
为什么我会收到这个?
在文档中,我认为我没有任何错误地遵循了代码。但是,仔细观察,而在文档中,当您调用 sign_tx.rawTransaction 时,它会返回类似这样的内容
我从我的代码中看到的是这个
为什么我的代码返回不同的东西?
像发送原始事务这样的函数需要什么数据类型?我怎样才能使这项工作?
ethers.js - 在 Node.js 上使用以太库在 Pancakeswap 上出售功能
我正在尝试通过在测试网上使用 pancakeswap 路由器 v2 将我的 busd 令牌换成 bnb(wbnb)。虽然我有 CALL_EXCEPTION。
在我深入研究代码之前,我在bscscan上遇到了同样的问题。我不知道这是否相关,但即使我成功批准了合同,它仍然返回 0 作为津贴。这是我尝试的方法,我从代码中获取了值。无论输入如何,总支付金额(金额 + 汽油费)都不会改变。
这是我在测试网中的资产。
amountIn 值填充了 busdContract.balanceOf 方法的返回值
amountOutMin 由 pancakeswapRouter.getAmountsOut 方法计算
批准令牌:
Sell 函数(它实际上会引发 CALL_EXCEPTION 错误):
我还尝试提供自定义金额,并使用检索到的 abi 的(busd abi)小数值进行计算,但没有运气;它给出了同样的错误:CALL_EXCEPTION。
错误消息和失败的交易都没有给我任何线索。它只说代码= CALL_EXCEPTION。这让我无处可去。
我怀疑问题出在批准和津贴上。即使批准交易成功,我的钱包的busd津贴总是为零。提前谢谢了。
这是变量,在图像中看到:
python-3.x - 使用 Python 在 BSC 中发送失败的交易时 Cut 丢失
我对gas费用系统以及矿工如何选择交易处理顺序感到有些困惑
根据我的阅读,有一个遗留系统,您可以在其中设置 gasPrice 和 gas,后者是您愿意支付的最大 gas 量。这应该包括交易成本+矿工的费用。
然后有一个较新的版本,您可以在其中设置矿工的最高费用和最高费用总额,以涵盖交易和矿工的费用。
该费用应该激励矿工选择他们的交易而不是其他人。
第一个问题。我看到人们设置高得离谱的费用来保证他们赢得交易。例如,购买 30 美元代币的费用超过 100 美元的交易哈希。
如果该交易失败,他将被收取多少费用?有没有办法知道这一点?
然后是第二个问题。这里有 2 笔交易竞争相同的代币。两者都在 3 秒内开采完毕。
这真的让我很困惑。失败的交易最多支付 0.013BNB,而获胜的交易提供 0.008BNB。
为什么提供较少费用的交易首先处理?我在这里错过了什么吗?
顺便说一句,这两笔交易都是使用自动机器人进行的,所以两者都在竞速,并且都是在第一个交易被包含在一个区块之前发送的。
python - Web3 bsc token 用 python 发送,gas 费计算。ValueError: {'code': -32000, 'message': 'gas * price + value 资金不足'}
我想编写一个小的python程序,如果我的acc2有余额程序将检测到一个正余额并将其发送到我的另一个钱包acc1。使用 web3 bsc 创建事务出现错误:
"ValueError: {'code': -32000, 'message': 'insufficient funds for gas * price + value'}"
我不确定,但可能试图在交易中做错事。我的 acc2 余额获得了代币和 bnb 用于支付汽油费。
python - Web3 错误:运行 w3.eth.contract(address,abi) 得到错误:TypeError:type.new() 参数 3 必须是 dict,而不是生成器
Web3 版本:5.12.2 Python:3.7 操作系统:Mac
我尝试使用以下简单代码创建合约实例:
但是出现以下错误,任何人都可以提出建议,谢谢
javascript - Pancakeswap - getAmountsOut 得到奇怪的结果
我正在 web3 中迈出第一步,这就是为什么问题可能很愚蠢。
我不明白,为什么 Pancakeswap 的 v2 路由器的 getAmountsOut 方法的结果与我在 Pancakeswap 前端看到的交换结果有很大不同。
BAKE 小数应该自动无处不在 18,所以我不明白这种不同结果的原因。
BUSD-BAKE 互换示例
- 我的代码(结果为 20000 BUSD -> 163 BAKE)
- 在 bscscan 中调用路由器合约上的 getAmountsOut 方法(结果为 20000 BUSD -> 163 BAKE)
- PancakeSwap UI 的屏幕截图(结果为 20000 BUSD -> 12100 BAKE)