问题标签 [ether]
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.
blockchain - Solidiy FundMe 智能合约 - Remix - Chainlink `调用 FundMe.getVersion 错误:执行恢复`
我正在学习使用 Chain Link 进行价格转换以及实现 Chainlink 提供的其他功能。我在 Rinkeby 测试网上有 2.9992 ETH,我能够使用 Remix IDE 使用 Injected Web3 Environment 成功编译和部署代码。
每当我调用函数getVersion或 ChainLink 中定义的任何其他函数时。我收到这样的错误
"call to FundMe.getVersion errored: execution reverted"
testing - 当主要 rinkeby 水龙头网页不起作用时,如何在 21 年 9 月 20 日获得宠物项目的测试以太?
我已经尝试了这两个链接,但似乎都没有工作:
https://faucet.rinkeby.io/ 根据这篇文章它不起作用: Rinkeby Authenticated Faucet is not working? 我尝试了两个不同的地址,但已经好几天了,对我没有用。
这个似乎也不起作用 http://rinkeby-faucet.com/ “没有可用资金”错误以红色显示
关于如何获得一些甜蜜、甜蜜的水龙头测试乙醚的任何建议?
node.js - 错误的原因是什么:“错误:getaddrinfo EAI_AGAIN [rpc url]”?
在调用智能合约(已部署到 rpc 服务器)时出现错误:getaddrinfo EAI_AGAIN ...当我使用测试区块链(gnache)时,智能合约工作正常,但当我将其部署到我的私人时显示上述错误以太坊区块链(PoA)。智能合约正在执行一些繁重的读写操作,因为我正在发送信息数组
调用函数
genesis file
web3 - 如何通过 web3js 交易设置 Eth 价格
我正在尝试设置交易的价格
根据文档:
value (in wei):从发送者转移到接收者的 Wei 数量。
但是当我输入这个值时:(对于 0.04eth)-> 我在 metamask 中得到 73 eth :)
(我在rinkeby网络上)
这是我的代码:
blockchain - 在以太坊上部署智能合约
我正在尝试在 Rinkeby 测试网上获得免费的以太币,这是我的 Facebook 帖子: https ://www.facebook.com/mouhannad.allouf/posts/4426347617448428
但我在https://faucet.rinkeby.io/上找不到以太坊地址
提前致谢。
blockchain - 创建以太钱包的最佳方法是什么?使用助记词创建钱包如何工作?
请任何人帮助我了解创建以太钱包的最佳和可能的方法。使用助记词创建以太钱包有什么意义。BIP-0039 和 BIP-0044 是什么?如何使用助记符创建钱包及其用途?
struct - 无法构造包含(嵌套)映射的 Solidity、Struct
我正在使用solidity ^0.8.7。当我尝试创建一个包含映射的结构时,我修改了一个错误:“无法构造包含(嵌套)映射的结构。” 我认为这与 0.7.0 版中的文档更改有关。但我找不到解决方案。
编码:
使用旧版本的 Solidity 编译它没有问题。
transactions - Etherscan API 数据不一致
我遇到了从 Etherscan API 返回的数据的问题。我正在使用两个端点:
(1) 按地址划分的正常交易
(2) Erc721 Transaction by Address
- 地址:
0x0b8f4c4e7626a91460dac057eb43e0de59d5b44f
- 哈希:
0x6b2103201b968e5ad9a26041127080c4969b10191c8ad94082980487d6fbd9aa
--> 薄荷事件
调用 (2) 时,我可以看到此交易,但此端点不传递传输的值。我曾经通过调用 (1) 并遍历列表并匹配 tx 哈希来获取值,但它没有列出。在 Etherscan 上,您可以看到转移值为 0.05 Eth 的铸币事件(https://etherscan.io/tx/0x6b2103201b968e5ad9a26041127080c4969b10191c8ad94082980487d6fbd9aa)。但是这些信息是从哪里来的呢?如何找到转移的价值?
现在是另一个有效的例子:
- 地址:
0xB2Ebc9b3a788aFB1E942eD65B59E9E49A1eE500D
- 哈希:
0x57ece5c8b9f040f43faac83a68883a5324f2ef6d36ad0018dc6813a0c851ff74
我可以在调用 (2) 时看到交易,并且在调用 (1) 时还可以看到匹配的 tx 哈希
非常感谢任何支持和提示!
blockchain - Restrict function access ONLY to one other specific contract in Solidity
I have a security problem in my Solidity contracts and I can't figure out how to fix it.
The flow goes like this:
- First, we create an instance of contract A;
- Create an instance of contract B, which receives the contract A instance in the constructor (its address);
- At some point, contract B calls a function 'foo' from contract A which tells contract A to send money to an address (the address is received as a parameter);
- Contract A sees the msg.sender as the address of contract B;
My problem is:
- I want to restrict the access for the function 'foo' in contract B only to be called by contract A (no calls made by humans manually);
- I cannot make a modifier to check the address. Since I create Contract A before Contract B, I cannot know the address of Contract B in Contract A;
- I cannot make the function internal as the contracts are not derived;
Can you please offer me advice on how to fix this problem or explain another approach on this? I am new to Solidity. Thank you!