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

node.js - 如何让 Web3js 在 VueJS 组件中工作?

我想将 web3 与 node 和 vuejs 一起使用来连接到 Ethereum Parity 节点。

  • 我正在使用带有 webpack 的 vue-cli。
  • 奇偶校验在 localhost 上运行。
  • 当我访问时http://localhost:8545,我看到哪个告诉我 Parity 正在倾听。

在此处输入图像描述

我创建了以下 Vue 组件:

当我跑步时,npm run dev我得到了这个:

在此处输入图像描述

在控制台上,我看到了这个:

在此处输入图像描述

我尝试使用此配置代码添加 Access-Control-Allow-Origin 标头,但没有修复它。控制台错误似乎表明 Parity 节点需要设置此标头选项。

0 投票
2 回答
2727 浏览

javascript - 在solidity 0.4.6中使用send()函数时合约抛出无效地址

这是我正在尝试的可靠代码。代码的编译工作正常。但是,当我通过 javascript 调用函数 send() 时,它会抛出异常: throw new Error('invalid address');

这是javascript代码

每当代码运行时,它都会抛出无效地址错误并崩溃。

0 投票
2 回答
1485 浏览

ethereum - 智能合约区块链历史

智能合约是否有可能查看过去在其上完成的交易,换句话说,智能合约是否有可能查看自成立以来谁向它发送了以太币?

0 投票
1 回答
766 浏览

ethereum - Web3.js API 调用有限制吗?

我正在尝试遍历块并获取他们的交易信息,如下所示:

问题是我正确地绕过 525-545 块,然后 app.web3.eth.getBlock(i)调用块执行。循环卡在那里。这不是关于可能使过程错误的传入块,因为当我从块 1000 开始循环时,它正确地获取块 1000 - 1540 并停留在 1540。

也是app.web3.eth.blockNumber300万左右,无论如何问题不在于终止循环。

有趣的是,循环上的迭代计数并不稳定。它总是在 525-545 之间变化。

我试图在请求之间延迟,但这也没有用。

此外,当我将 API 调用加倍时,如下所示:

循环迭代大约 270 次。

API 调用有限制吗?如果是这样,怎么可能被超越?

0 投票
0 回答
1155 浏览

ethereum - 如何使用 web3 库以太坊获取公钥

已解锁时如何使用 web3 库获取公钥。

0 投票
2 回答
696 浏览

meteor - TypeError:在流星服务器端使用 web3 时,XMLHttpRequest 不是函数

TypeError: XMLHttpRequest is not a function当我尝试与我的流星应用程序的服务器端的合同交互时,我得到了错误。

第 3 行引发了错误。如果我在客户端运行相同的代码,我不会遇到问题。

0 投票
1 回答
3998 浏览

ethereum - 通过 Web3 获取 ETH FIAT 兑换率

我是否遗漏了什么,或者即使 Metamask 中显示了 ETH 美元汇率,也无法通过浏览器中的 web3 获得此信息。

在文档中找不到任何内容。

使用跨加密 API 的标准做法是什么?

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

javascript - 找不到方法:erisdb.call

嘿,我正在尝试使用该eris-contracts软件包与 monax 平台上的智能合约进行交互。

我曾经在区块链的 eris 版本中运行良好的合约,但是当我更新到新的 monax 版本时,我收到了这个奇怪的错误:

Eris DB error: Call of method "call" with parameters { from: '424FF9990BD1AD02CB7294914986E27343E702EB', address: '723388A1EA103460561FA1758CE4BBCD8322F9F6', data: 'a5f3c23b00000000000000000000000000000000000000000000000000000000000000220000000000000000000000000000000000000000000000000000000000000016' } responded with "Method not found: erisdb.call".

我尝试制作一个非常简单的合约(使用 add 方法)并尝试调用它。但是每当我尝试调用合同上的任何方法时:

我得到了上述错误。

我一直在关注网站上的Smart Contracts JS SDK,只是为了确保在升级到 monax 时没有语法更改。

区块链安装本身看起来并没有什么问题,因为运行 epm.yaml 确实给出了预期的结果。

这是合约启动代码:

以下是不同作品的版本:

  • eris 合同:0.15.12
  • 莫纳克斯:0.16.0
  • 坚固性:0.40.0
  • 节点:8.1.0
  • npm:5.0.3
0 投票
0 回答
420 浏览

meteor - 如何从流星应用程序的服务器端连接到节点

这是我用来运行节点的命令(私有测试网)

这是我用来连接到应用程序服务器端节点的代码

如果我在服务器端尝试web3.isConnected()它返回 false

我也按照评论的建议进行了尝试console.log(web3.net.listening),但这给出了错误:

我可以在客户端连接良好并web3.isConnected()返回 true

我在我的计算机上本地运行该应用程序