问题标签 [go-ethereum]
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 - 是否可以在 genesis.json 中预定义智能合约?
我遇到了与此https://ethereum.stackexchange.com/questions/7707/is-it-possible-to-preload-contracts-in-the-genesis-block?rq=1完全相同的问题
Agian,是否可以通过像这样分配 alloc -> code 字段来预定义合同,
但是,似乎无论我调用合约中的哪个方法,它总是返回合约本身的字节码,而不管该方法的逻辑和内容如何。
这可能是我部署合约的原因:
当我调用 test() 时,获得:
当我调用 test2() 时,获得:
当我调用 test3(1) 时,得到一个 false,它不是 1 == 1。
我查看了相关线程,发现了这个,https://ethereum.stackexchange.com/questions/30366/how-does-the-genesis-json-file-define-the-initial-state-of-the -区块链
看起来存储设置是必要的,但我完全不知道我应该写什么键/值。
那我该怎么处理这个案子呢?
ethereum - POA集团以太币
我使用 Clique 权威证明(2 个密封器)创建了 3 个节点。我知道我可以在初始化 genesis.json 文件时分配以太币。
问题:3 个节点可以挖以太币还是只挖封印者?
go - 以太坊简单存储:get() 函数总是返回零?
- https://github.com/ethereum/go-ethereum/wiki/Native-DApps:-Go-bindings-to-Ethereum-contracts
- https://decentralize.today/introducing-perigord-golang-tools-for-ethereum-dapp-development-60556c2d9fd
简单存储.sol:
绑定/SimpleStorage.go:
测试/SimpleStorage.go:
geth
使用此脚本启动:
问题:运行perigord test
给了我结果:
为什么get()
返回 0 而不是 2302?
通过打印交易,我看到了:
如果我试图获取To
地址的值:
和:
ethereum - 在geth中可以托管不在本地主机上的专用网络吗?
我想知道是否可以在 geth 而不是在本地主机上托管专用网络。是否可以使用非本地 IP 地址连接到我的私有链?
ethereum - 最近签的Clique POA 一定要等别人
这是我第一次这样做,希望有人能理解我的语法和问题。我使用 puppeth 创建了 2 个节点,并为我的私人以太坊选择了 Clique。两个节点都是密封器(使用clique.getSigners()在两个节点上验证)并且都可以将彼此视为对等点(使用admin.peers验证)。当我开始使用下面的代码为两个节点挖掘时,两个节点最近都停留在签名状态,必须等待其他节点
geth personal.unlockAccount(eth.coinbase)
geth eth.defaultAccount = eth.coinbase
geth miner.start()
以下是创建节点 1 的步骤(已经使用 puppeth 创建了 genesis)
- geth --datadir "文件夹" 初始化 "genesis.json"
- geth --datadir "文件夹" --networkid [网络提供] --nodiscover
- 单独的控制台 - geth attach ipc:\.\pipe\geth.ipc
- admin.addPeer(节点2的enode)
下面是创建节点 2 的步骤(已经使用 puppeth 创建了 genesis)
- geth --datadir "文件夹" 初始化 "genesis.json"
- geth --datadir "文件夹" --networkid [网络提供] --nodiscover
- 单独的控制台 - geth attach ipc:\.\pipe\geth.ipc
- 获取 enode admin.nodeInfo.enode 并在节点 1 中使用 admin.addPeer
检查签名者 - clique.getSigners - 两个帐户都出现
检查两个节点的对等节点 - admin.peers - 都可以
然后我都使用下面的代码
geth personal.unlockAccount(eth.coinbase)
geth eth.defaultAccount = eth.coinbase
geth miner.start()
android - go ethereum 的 Gradle 同步错误
在应用程序的 build.gradle 文件中,我包含了 maven 中央存储库并添加了依赖项
但是 Gradle 同步失败并出现此错误
我该如何解决?
android - 如何将 android 模拟器连接到本地托管的私有以太坊区块链?
由于运行geth实例的localhost是127.0.0.1,模拟器的localhost是10.0.2.2。,我怎样才能在它们之间建立连接?
azure-web-app-service - 如何在 Azure 网站中使用 web3js 访问 Azure 私有节点?
我已成功在 Azure VM(OS Windows)中设置节点。下面是命令
在我托管在 Azure 网站上的代码中
笔记
- 我可以在 Remix web3Provider 中使用 localhost:8545在带有节点的 VM 内访问它,但我无法使用公共 IP (publicIP:8545) 或 DNSName:8545 在 VM 外部访问
- 我在 VM 的网络安全组中打开了端口 30303、8545、22,8000、8080
- 该节点目前也正在成功挖掘
rpccorsdomain "*", --rpcaddr 0.0.0.0, try also --rpcaddr StaticIP
我在想,如果我可以在带有节点的 VM 之外的 Remix 中访问它,它应该在 Azure 网站中也能正常工作。
go-ethereum - Geth 节点日志在上传智能合约后被杀死
我遇到了geth的问题。
在我通过 RPC 上传智能合约后,节点记录Killed
并死亡。
有谁知道问题可能是什么?或者我如何调试它?
solidity - web3 - event.watch 以随机顺序吐出事件
我正在观看一个活动:
在事件内部,我这样做了tempString = ((messages.split(":")[1].split(",")[0] + " (From: " + messages.split(":")[2].split("}")[0]) + ")").replace(/"/g, '');
,长话短说,从事件中生成一个字符串,从块中给出事件(即它给出在块 173 中生成的事件)。
然后我从每个事件中设置一个<h2>
元素的文本。发生这种情况时,它会将它们设置为看似随机的顺序。会发生什么,它将它们从块 0 设置为最新的块,所以这怎么会发生。
这是完整的代码:https ://pastebin.com/wGt5kL1Y