| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 区块链 -> 【以太坊】使用Go部署智能合约时报错:only replay-protected (EIP-155) transactions allowe...... -> 正文阅读 |
|
[区块链]【以太坊】使用Go部署智能合约时报错:only replay-protected (EIP-155) transactions allowe...... |
今天使用abigen部署智能合约时报了下面这个错: 百思不得其解,试过各种方法,国内外网站都走了一遍,没有遇到使用golang开发时报了这个错然后解决成功的帖子,最终在翻go-ethereum源代码的时候终于解决了它,感觉快哭了,必须开个贴记录一下这个报错,国内网站应该还没有能解决这个错误的帖子 走到这一步的小伙伴估计前面也是摸爬滚打的够了,直接开始吧~ 首先来看报错的函数,源代码是这样写的: 这里参考的是geth官方文档的写法: 不得不吐槽一下,官方文档也是够拉啊,这个函数半年前就更新了,现在文档居然还不更新,不知道冥冥之中坑了多少用golang的同学! 经过无尽的搜索,终于扒到这么一篇文档,捕获到一个关键信息: 这句话的意思是,go更新后现在绑定交易时用户可以指定chainID来提高交易的安全性,经过其它网页也初步判定了是chainID绑定出了问题,如何改呢?顺藤摸瓜,找到这篇帖子。 这是geth_v1.10.0更新的文档,往下翻啊翻,翻到这么一段关键信息:
经过不懈努力,来到/accounts/abi/bind/auto.go,找到这个函数: 而这就是我们报错的函数!可以看到,这里也给了一个log.warn,但是shell中并没有提示,它告诉我们要调用新版函数NewTransactorWithChainID,再继续往下翻,终于翻到这个函数: 这才是正确的函数调用,如何使用这个函数呢?网上参考到一篇博客,他是这么写的: 于是知道怎么调用这个函数后,也把自己的函数进行修改,配置上本地chainID: 然后回去再运行,就成功了!!! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 1:51:18- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |