y00303034 2018-05-24 01:31 采纳率: 100%
浏览 2355
已采纳

使用HTML的加载的web3连接以太坊节点失败,需求大侠解答一下:

目前我在阿里云ubuntu的环境,搭建了以太坊的私链,主要是用于自己测试;
使用Geth启动了以太坊的客户端:
geth --datadir data0 --networkid 199810 --ipcdisable --port 61911 --rpc --rpcport 7545 console
然后在linux里面的命令行查看7545的TCP端口是处于监听状态的,
但是通过下面的脚本:

if (typeof web3 !== 'undefined') { web3 = new Web3(web3.currentProvider); } else { // set the provider you want from Web3.providers web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:7545")); }

一直是无法真正连接后台的以太坊节点,只要是实际访问web3.eth的信息,脚本就会执行失败,例如访问账户信息:web3.eth.defaultAccount = web3.eth.accounts[0];
脚本是无法执行成功的,辛苦大家帮忙看一下是什么原因啊?有什么解决办法吗?

  • 写回答

3条回答 默认 最新

  • QQ150900 2018-05-24 14:53
    关注

    对了,你的 --rpcport不用设置,把--port 设置为7545再试一下吧,我看是你的创世块启用设置问题

    可以参与下面这行:
    geth --identity "KCetherum" -rpc -rpccorsdomain "*" --datadir "%cd%\chain" --port "30303" --rpcapi "db,eth,net,web3" --networkid 95520 -nodiscover --verbosity=5 console 2>>kcchain.log

    参数
    描述
    identity
    区块链的标示,随便填写,用于标示目前网络的名字
    init
    指定创世块文件的位置,并创建初始块
    datadir
    设置当前区块链网络数据存放的位置
    port
    网络监听端口
    rpc
    启动rpc通信,可以进行智能合约的部署和调试
    rpcapi
    设置允许连接的rpc的客户端,一般为db,eth,net,web3
    networkid
    设置当前区块链的网络ID,用于区分不同的网络,是一个数字
    console
    启动命令行模式,可以在Geth中执行命令
    nodiscover
    禁止被网络中其它节点发现,需要手动添加该节点到网络
    verbosity
    打印详细的日志信息

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试