goland+solidty报错锦集
本文已参与「新人创作礼」活动,一起开启掘金创作之路。 1、write tcp 127.0.0.1:8888->127.0.0.1:7861: wsasend: An established connection was aborted by the software in your host machine.(已建立的连接被您的主机中的软件终止。)
原因: 个人判断是以为数据库超时时间设置过短,连接就被数据库掐断了。 在渲染数据的时候还在使用旧时间查询数据库
解决方案: 1、重新运行一下项目(治标不治本) 2、 在初始化数据库的代码后面加 DB.DB().SetConnMaxLifetime(59 * time.Second)
2、error calling eq: invalid type for comparison
原因: gin框架使用template模板时,前端判断类型错误
解决方案: 使其类型相同做出判断
go {{if eq "" $v}} //$v为字符串类型
3、panic: runtime error: index out of range [0] with length 1
原因:属于数组越界 解决方案: 1、减少数据 2、增加数组的内存或换成切片
4、invalid argument to Intm
原因: 由于在后端使用了随机数的方法,需要足够的数据支持随机 解决方案: 1、增加数据 2、减少随机所需的数据
5、Post "http://127.0.0.1:xxxx": dial tcp 127.0.0.1:xxxx: connectex: No connection could be made because the target machine actively refused it.
原因:没启动区块链节点 解决方案: 启动节点或启动ganache
6、no contract code at given address
原因:该账户不是创建合约的账户 解决方案: 更改为此合约的创建账户
7、# sql: Scan error on column index x, name “createdTime“: unsupported Scan, storing driver Value type []uint8 into *time.Time
原因:go不支持扫描mysql时间类型
解决方案:
``` db, err = sql.Open("mysql", "name:password@tcp(127.0.0.1:3306)/databaseName?charset=utf8&parseTime=true") //在最后加上一句 &&parseTime=true 问题解决
```
8、Post "http://127.0.0.1:7545": EOF
原因:ganache或者区块链私链 报错崩溃,合约更新了方法,goland使用了新方法,但是没有引入新合约 解决方案: 换成最新的合约
``` const{ Prikey = "c5b9c7fd467335bd829b3b2a3098a72ac39b7f5efa162220b7907cfc684df9a3"
Address = "0x7D1672baDeA4825c4B8fFD938fFD29457D6aF6ae" //将合约地址改为最新的合约地址。
} ``` 并且生成与solidity交互后最新的go文件