小狐狸转账失败,提示gas费过高

做web3开发的时候,明明自己小狐狸里还有2.15的代币,但页面我要转出2.1的时候,明明是够的,而且使用小狐狸提示gas费用是21000,这已经是最小的了,但网页转出到其他账户总是提示失败。而且这个错误非常不好捕获。

发现问题

2ed573372f914d0bbafe5a8b460b17de.png

Internal JSON-RPC error 

 "err: insufficient funds for gas * price + value: address 0xf9B6ACf0B4c0cf893624ab69a8E6D26fehave 3100004000000000 want 52000000000000000 (supplied gas 50000000)

 排查问题

于是就四处寻找这个50000000是哪里来的呢,结果大家找了半天,愣是没找到这个50000000的数值是哪里设定的。

经过不断寻找,发现,如果在调用 web3.eth.sendTransaction 方法时没有传入 gas 参数,以太坊客户端会自动估算所需的 gas 量。然而,这种自动估算可能不够准确,有时候可能会导致交易失败。

如果没有指定 gas 限额,以太坊客户端会根据交易内容和当前网络状况估算一个 gas 限额。这个估算可能会尝试执行交易,直到确定所需的 gas 量。但是,在某些情况下,这种估算可能不足以完成交易,导致交易失败。

因此,为了确保交易成功,最好是手动设置一个合适的 gas 限额。一般来说,你可以使用 web3.eth.estimateGas 方法来估算一个合适的 gas 限额,然后将其传递给 sendTransaction 方法。

意思就是,如果代码里不设置gas的话,每次估算会不准确。

解决

最终,在代码中加入gas入参,每次都给他设定一下gas,解决了

web3.eth.sendTransaction({
  from: '0xYourAddress', // 发送者的以太坊地址
  to: '0xRecipientAddress', // 接收者的以太坊地址
  value: web3.utils.toWei('1', 'ether'), // 发送的以太币数量,以 wei 为单位
  gas: '21000', // 交易所需的 gas 数量
  gasPrice: web3.utils.toWei('10', 'gwei'), // gas 价格,以 wei 为单位
  // 可选参数:data、nonce等
}, function(error, hash){
  if (!error)
    console.log(hash); // 交易哈希
});

 1bdec78d853047c89a59d1020f8b4e97.png

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/531573.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

二手车的一些经验

买辆二手车是怎样一种体验? - 知乎 买辆二手车是怎样一种体验? - 知乎 作者:jingangdaddy 链接:https://www.zhihu.com/question/28827207/answer/2881156930 来源:知乎 著作权归作者所有。商业转载请联系作者获得授…

c++调python接口

1. 新建run.py文件,并定义相关接口: import numpy as np from scipy.fftpack import fftdef str_add(str1,str2):return int(str1) int(str2)def my_sort(data):data.sort()return datadef aw_fft(data, Fs):N len(data)result np.abs(fft(xdata, n…

HarmonyOS 开发-自定义视图实现Tab效果

介绍 本示例介绍使用Text、List等组件,添加点击事件onclick,动画,animationTo实现自定义Tab效果。 效果预览图 使用说明 点击页签进行切换,选中态页签字体放大加粗,颜色由灰变黑,起到强调作用,同时&…

【C++入门】内联函数、auto与基于范围的for循环

💞💞 前言 hello hello~ ,这里是大耳朵土土垚~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹 💥个人主页&#x…

非线性滤波相位解缠算法

相位解缠是InSAR数据处理流程中较为关键的步骤,同时也是地表高程模型重建 过程中的主要误差来源之一。迄今为止,针对干涉图的相位解缠问题,已经提出了各 种各样的相位解缠算法,这些算法大致可以分为以下几类:①路径跟踪…

nexus搭建maven与docker镜像的私有仓库

引言 通过nexus搭建maven与docker镜像的私有仓库,实现jar包与镜像动态更新、共享、存储。 一、nexus部署 通过docker-compose部署nexus name: java services:#############################环境#############################env-nexus:restart: always## 3.58.1image: so…

SpringBoot自动装配原理之@Import注解解析

文章目录 1. 概述2. 使用2.1 导入普通Bean2.2 导入配置类2.3 导入 ImportSelector 实现类2.4 导入 ImportBeanDefinitionRegistrar 实现类 3. 区别 1. 概述 当谈及现代Java开发领域中的框架选择时,SpringBoot无疑是无与伦比的热门之选。其简化了开发流程&#xff0…

即插即用篇 | YOLOv5/v7引入Haar小波下采样 | 一种简单而有效的语义分割下采样模块

本改进已集成到 YOLOv5-Magic 框架。 下采样操作如最大池化或步幅卷积在卷积神经网络(CNNs)中被广泛应用,用于聚合局部特征、扩大感受野并减少计算负担。然而,对于语义分割任务,对局部邻域的特征进行池化可能导致重要的空间信息丢失,这有助于逐像素预测。为了解决这个问题…

动态规划刷题(2)之杨辉三角(详细解释)

最近在自学动态规划,网上到处找资料学习: 在这里记录我的刷题历史: 题目都是在力扣里面刷的!! 这里,我放一个刷动态规划的链接在这里:动态规划知识点题库 - 力扣(LeetCode) 力扣 在这里附加动态规划相关知识点:动态规划(DP)-CSDN博客文章浏览阅读197次。动态规划…

简单的配置信息保存一例

上位机程序通常都会需要保存一些用户的配置信息。比如名称,年龄等 设置文件的使用非常方便,在项目名称上右击,选择“添加/新建项”。 如下图: 新建项目 新插入的设置文件Settings1会自动打开。添加对应项目 数据类型分别为str…

2024年第五届计算机视觉与信息技术国际会议(CVIT 2024)即将召开!

2024年第五届计算机视觉与信息技术国际会议(CVIT 2024)将于2024年8月16-18日在北京举行。CVIT 2024由北方工业大学主办,国内外的专家学者将齐聚一堂,共同分享最新的技术突破、研究方法和应用案例,共同推动计算机视觉与…

自动驾驶定位算法-递归贝叶斯滤波(Bayes Filter)

自动驾驶定位算法-递归贝叶斯滤波(Bayes Filter) 附赠自动驾驶学习资料和量产经验:链接 贝叶斯滤波器(Bayes Filter)是无人驾驶汽车中高精定位相关的基础技术,同时也是机器人技术中的基础算法。 如上图,开始机器人不知道自己在哪里&#xff…

gurobi不同版本切换

每年年底,gurobi都会推出新版本。新版本是大的迭代更新,求解问题的效率和精度都会提升。官方人员一般会建议我们安装最新的版本,此外,写论文审稿专家也会建议我们使用较新的版本。 从我们现装的版本切换到新版本。我以往的做法是…

微信朋友圈定时神器必须拥有!随时随地轻松发圈!

在微信朋友圈这个社交平台上,很多人都希望通过发布内容来进行个人推广或商业营销。但是,在忙碌或是节假日时,想要随意发布内容也会有些麻烦。 今天我要向大家分享的是一个微信朋友圈定时发布的神器,让您随时随地轻松发圈&#xf…

分享 GoLand 2024.1 激活的方案,支持JetBrains全家桶

大家好,欢迎来到金榜探云手! GoLand 公司简介 JetBrains 是一家专注于开发工具的软件公司,总部位于捷克。他们以提供强大的集成开发环境(IDE)而闻名,如 IntelliJ IDEA、PyCharm、和 GoLand等。这些工具被广…

旧衣回收市场发展快速,线上小程序为商家提供新机遇

随着人们生活水平的提高,衣服淘汰的速度也在不断加快,每年垃圾站都会有非常多的废弃衣物。旧衣物的废弃不仅对环境有破坏,还造成了资源浪费。 因此,旧衣物回收行业受到了大众的关注,旧衣回收市场具有先天的优势&#…

十六进制前缀为Ox还是0x???

16进制的前缀是0x,数字零和英文字母X。 十六进制(英文名称:Hexadecimal),是计算机中数据的一种表示方法。同我们日常生活中的表示法不一样。它由0-9,A-F组成,字母不区分大小写。与10进制的对应…

基于 SSM 医院病历管理系统的设计与实现

摘 要 病历管理系统是医院管理系统的重要组成,在计算机技术快速发展之前,病人或者医生如果想记录并查看自己的健康信息是非常麻烦的,因为在以往病人的健康信息通常只保存在自己的病历卡或者就诊报告中,如果在就诊时想进行查看只能通过观看…

突如其来:OpenAI分家的Anthropic公司悄悄地释放出他们的秘密武器——Claude3

突如其来的消息,OpenAI分家的Anthropic公司悄悄地释放出他们的秘密武器——Claude3 这货居然在默默无闻中一举超越了GPT-4的地位。没发布会,没吹牛逼,就发了一帖子。 字少,事大。 Claude3独挡一面的推理能力 Anthropic推出了三款…

数学建模笔记(10)整数规划和0-1规划

前由 显然通关次数不能是小数,这就涉及到了整数问题。 定义 例题