问题标签 [web3]

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 回答
1588 浏览

python-3.x - 无法在测试网上使用 Parity 和 Web3 解锁帐户

我正在为 Debian (Jessie) 上的测试网 (Ropsten) 运行本地 Parity 节点。我正在使用 web3.py 连接到该节点并创建事务。

我创建了一个新帐户:

我正在使用以下选项运行我的奇偶校验节点

当我测试这个节点时,它运行良好,请参见以下 python shell:

但是,当我尝试解锁我的帐户时,它会返回 False(当然还有正确的帐户哈希和密码)

当我检查它是否真的在我的帐户列表中时,我得到以下空数组:

但是,当我检查奇偶校验时:

它列出了 3 个帐户。为什么它没有显示在 listAccounts 中?我必须以某种方式使该帐户可用吗?

任何想法将不胜感激。

0 投票
4 回答
2716 浏览

blockchain - web3j 中凭证的钱包路径是什么?

我正在使用自述指南https://github.com/web3j/web3j

我感兴趣的是使用 Java + Web3j 从我的主机开发智能合约到在我的虚拟机上运行的私有以太坊网络。

有这样的行:

所以问题是:

我应该如何创建这个钱包?我应该在我的虚拟机上生成帐户,然后将wallet.json文件复制到我的主机吗?

0 投票
2 回答
4226 浏览

javascript - 使用元掩码时检测 web3 默认帐户的更好模式

上下文:我想使用 blockies 在页面上呈现一个身份图标,我从 web3 获取 defaultAccount,为此,用户必须使用钱包中选择的地址登录到 metamask。

问题:web 应用程序似乎没有在页面的加载事件上检测到 web3 对象,建议在 wchih 进行检测。

代码:下面的灵感来自以下建议:

https://github.com/MetaMask/metamask-plugin/issues/1158

https://github.com/MetaMask/faq/blob/master/DEVELOPERS.md#partly_sunny-web3---ethereum-browser-environment-check

我一直有间歇性行为,有时 web3 存在,有时不存在,我能想到的唯一解决方案是有一个计时器,但这在我看来有点过于简单,我更喜欢更优雅的东西。

问题:是否有更好的解决方案来在页面加载时从 web3 中检测 defaultAccount?

0 投票
1 回答
1467 浏览

node.js - web3 npm 安装失败

我似乎在努力让 npm 安装 web3

使用的命令:

npm 安装 web3

错误:

npm 错误!路径必须是字符串。收到未定义

日志:

我也试过用 root 用户运行它们。任何帮助表示赞赏。

谢谢

0 投票
1 回答
1601 浏览

node.js - 调用合约方法并手动签名时出错。SendTransaction 有效 SendRawTransaction 无效

再会,

我正在编写一个节点 api 来公开我的区块链上的方法(使用松露进行部署和测试)。我使用 web3.js、ethereumjs-tx、ethereum、truffle 和solidity 作为我的技术栈。

交易参数为:

我正在使用 ethereumjs-tx

使用链接到我的 mainAccount 的私钥签署交易

我得到了 gas * price + value 资金不足的错误。我从 mainAccount(来自 txParams 的 from: 字段)发送此交易。所以我在我的 mainAccount 上记录了余额

结果是 252.12609391539726。所以不能没有资金。我什至估计了 web3.eth.estimateGas(txParams) 交易,它给了我 97899。当前 ropstein 区块的气体限制是 4,707,806。所以我应该有足够的。所以问题仍然是为什么我得到的资金不足。

我怀疑的唯一原因是 from: 字段,即我的 mainAccount 实际上不是交易的付款人。

更新: 问题可能出在签名上,因为我刚刚测试过

它起作用了,所以问题实际上是为什么 sendRawTransaction 不起作用。可能与我签署交易的方式有关吗?

我检查了

其实和我的mainAccount有关。private_key_inserted_here 取自“密文”字段中与我的主帐户相关的密钥库。我通过匹配密钥库的“地址”字段来检查与我的 mainAccount 相关的内容。

提前致谢。

0 投票
1 回答
620 浏览

node.js - CryptoCurrency NODE.js Web3 以太坊 - 无法连接到 TESTRPC

我正在尝试从我的 web3 应用程序连接到我的 testrpc 实例,但我似乎无法连接。以下代码应返回 testrpc 链中所有帐户的数组。

代码:

它返回下面和 intelliJ 对象内部的 currentprovider 对象如下。 在此处输入图像描述

它似乎只是打印我认为的对象:

testRPC 服务器也启动成功: 在此处输入图像描述

0 投票
0 回答
605 浏览

javascript - 如何使用 JS 向以太坊发送大量交易

我正在尝试使用一个用 js 编写的程序向以太坊发送大量交易。我使用 NodeJS、web3 和 infura ropsten。问题是:如果我一次发送交易,大部分交易就会消失。为了解决这个问题,我发送了有间隔的交易。它有效,但非常缓慢。我花了大约一个小时只发送 100 笔交易。有什么解决方案可以让它更快更正确地工作吗?我正在考虑在前一个开始挂起之后发送交易,但我不知道该怎么做。函数 sendRaw 仅在一段时间后获取交易编号。该代码读取文件,获取地址、金额和可选数据,并使用智能合约的方法转移代币。这是代码:

0 投票
1 回答
973 浏览

ethereum - 使用 web3 部署智能合约时不支持同步请求

我正在尝试使用 Web3、Truffle 和 Testrpc 在本地部署智能合约。我使用 Truffle 编译了一个智能合约,并使用以下代码来提取 ABI 和字节码。在同一个脚本中,我正在尝试使用 web3.eth.contract.deploy 部署合同(在本文档中给出:https ://web3js.readthedocs.io/en/1.0/web3-eth-contract.html#deploy ) 但一直收到此错误:

我应该怎么做才能解决这个问题?

这是供参考的脚本:

console.log("完成");

0 投票
2 回答
6528 浏览

node.js - 部署智能合约时获取“未定义”的无效参数数量

我正在尝试在 testRPC 上部署我的第一个投票合约,下面是我的代码。由于某种原因,当我开始部署时它会抱怨。

错误似乎来自 arguments 参数。我尝试传递一个空数组,它说“得到 0 预期 1!”。我试着只传递一个名字,它说“value.forEach”不是一个函数。

任何帮助将非常感激。谢谢你。

0 投票
1 回答
1406 浏览

node.js - 无法使用 nodejs 安装 web3

我正在尝试使用 npm 安装 web3.js,但失败并出现以下错误。错误消息很长,我在这里分享了前几行。

请让我知道这里可能是什么问题。