普通视图

发现新文章,点击刷新页面。
昨天以前首页

Sui 区块链编程: 通过 NodeJs/Javascript 函数获取 Gas 费用


在区块链开发的世界中,理解和管理gas费用对于优化交易至关重要。Sui作为一个相对较新但功能强大的区块链平台,有其独特的方式来处理gas价格。让我们来探讨如何使用Node.js和JavaScript获取Sui的gas价格。

Sui中的Gas理解

在区块链语境中,gas指的是执行交易或智能合约所需的费用。在Sui中,gas以MIST计量,其中1个SUI等于10^9个MIST。这意味着gas价格通常以每个交易或操作的MIST来报价。

获取Gas价格

这里有一个简单的异步函数来从Sui节点获取当前的gas价格:

const QUICKNODE_URL = "https://sui-mainnet-endpoint.blockvision.org"; // 你可以使用你自己的节点。

async function getGasPrice() {
    try {
      const response = await axios.post(QUICKNODE_URL, {
        method: "suix_getReferenceGasPrice",
        jsonrpc: "2.0",
        id: 1,
        params: [],
      });
      return parseFloat(response.data.result);
    } catch (error) {
      console.error("获取gas价格时发生错误:", error);
      return null;
    }
}

代码解析

  • axios.post: 我们使用axios向Sui RPC节点发送HTTP POST请求(假设QUICKNODE_URL在其他地方已定义为正确的URL)。
  • 方法和JSON-RPC: 使用 suix_getReferenceGasPrice 方法查询gas价格。采用JSON-RPC 2.0协议进行通信。
  • 错误处理: 如果获取gas价格时发生错误,会记录错误,并返回null以表示失败。

使用函数

你可以在异步上下文中调用这个函数:

(async () => {
  const gasPrice = await getGasPrice();
  if (gasPrice !== null) {
    console.log(`当前gas价格: ${gasPrice} MIST`);
  } else {
    console.log("无法获取gas价格。");
  }
})();

重要说明:

  • MIST: 返回的gas价格是以MIST计量的。为了实际应用,你可能需要将它转换为SUI以增加可读性,使用 gasPrice / 10^9。
  • QuickNode URL: 你需要用你实际的RPC节点URL替换QUICKNODE_URL。如果你不使用QuickNode,你可以连接到任何支持此RPC方法的Sui节点。
  • 异步特性: 记住,区块链交互本质上是异步的,因此使用async/await来处理promise。

获取Sui区块链Gas费用/价格的结论

使用Node.js获取Sui中的gas价格是直接的,但需要理解区块链gas机制的细微差别以及JSON-RPC通讯。这个代码片段可以作为开发者开始将gas价格检查整合到他们的Sui区块链应用中的起点,确保他们能够有效管理交易成本。

英文:Sui Blockchain Programming: Get the Gas Fee via NodeJs/Javascript Function

Sui 区块链编程

本文一共 496 个汉字, 你数一下对不对.
Sui 区块链编程: 通过 NodeJs/Javascript 函数获取 Gas 费用. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c Sui 区块链编程: 通过 NodeJs/Javascript 函数获取 Gas 费用 Javascript Node Js Sui 加密货币 区块链 程序设计 计算机 计算机
The post Sui 区块链编程: 通过 NodeJs/Javascript 函数获取 Gas 费用 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 油管视频/Youtube Premium会员的好处: 用了就回不去了 从前年开始,我成为了 YouTube 会员,不过中间时断时续,因为觉得价格有点贵。在英国,YouTube 家庭会员每月费用是 19.99 英镑(可供五位家人共享),而个人会员则是每月 12.99 英镑。去年回国前,我暂停了一段时间的会员服务,但回到英国后发现自己已经离不开 YouTube 会员了。 成为会员的最大好处就是没有广告。最初,YouTube 是没有广告的,但随着平台上视频数量激增,广告也逐渐多了起来。如今,YouTube 已然是长视频的王者,谷歌当年的收购绝对算得上是一次非常成功的商业决策,足以写进教材。随着视频数量越来越多,用户一辈子也看不完平台上的内容,所需的服务器资源也水涨船高。因此,谷歌插入广告确实无可厚非。然而,从最开始的一两个广告,到如今非会员用户每隔五分钟就得忍受一次广告,用户体验确实大打折扣。 会员的另一个好处是可以下载视频,不过并不是直接下载为视频文件.mp4,而是保存在设备上。这样一来,可以提前下载好音乐或视频,开车时就无需耗费流量了。 此外,YouTube...
  2. TikTok未能出售: 流量“难民”涌入小红书, 能否接得住? 最近,随着TikTok因监管压力未能在1月19日前完成出售事宜,大量的内容创作者和用户正在寻找新的平台安置自己的内容生态和社交网络。这一波流量转移,意外地将小红书(RedNotes)推向了风口浪尖。打开小红书,推荐页面中已经充满了国外用户的身影,甚至有用户戏称“小红书变成了‘国际版种草机’”。然而,这一流量迁徙带来的热闹背后,蕴藏着深刻的挑战和机会。 不过,由于美国新政府很快就要上台了,特朗普对抖音是比较友好的,所以目前这种局面可能会迎来新的转机。拜登政府上台后,政策方向可能会与特朗普有所不同,尤其是在针对中国企业的态度上,可能会采取更加审慎的评估方式,而不是简单的封杀或施压。 对于TikTok而言,这或许意味着缓冲的机会。一方面,拜登政府可能会重新审视TikTok在美国的安全问题,并尝试通过更为温和的方式解决争议,比如进一步完善数据监管和用户隐私保护,而非直接推动出售或下架。另一方面,如果政策有所松动,TikTok也许能够在国际市场重新站稳脚跟,挽回部分因政策不确定性流失的用户和广告商。 不过,这种转机并非完全没有挑战。TikTok必须快速适应美国监管层面可能提出的新要求,比如建立更加透明的数据管理流程、确保服务器本地化、以及加强对算法和内容分发的自我监督。此外,TikTok还需要修复此前因封杀风险导致的品牌信任危机,重新赢得用户和合作伙伴的信赖。 对于小红书来说,这也可能是一个需要重新评估全球化策略的时刻。如果TikTok因政策调整成功稳定住国际市场,那么这波流量“难民”可能会逐渐回归,甚至减少在小红书上的活跃度。这要求小红书在短期内快速吸引这些用户,并通过强化社区黏性和内容多样化,尽可能锁住这批流量。同时,小红书也需要未雨绸缪,为可能到来的用户流失准备应对策略。 无论TikTok是否会迎来转机,这场流量的争夺战都表明,在全球化的竞争中,灵活应变、长期规划和技术实力才是赢得用户和市场的关键因素。 外来流量与用户画像的冲突 小红书一直以其独特的社区氛围闻名,聚焦于生活方式、种草推荐和用户亲身体验分享,目标用户以中国年轻女性为主。随着大量国际用户的涌入,这一平台的内容调性可能面临巨大的冲击。很多本地用户已经开始抱怨,算法推荐的内容逐渐变得“陌生”,甚至暴露了个人的兴趣偏好。这种文化差异和用户需求的差异,可能会对小红书社区的核心黏性带来挑战。 不过,对于小红书来说,国际流量的到来也可能是一种绝佳的扩展契机。如果能够妥善应对文化融合问题,同时优化算法和内容分发策略,小红书完全有机会成为全球用户的内容分享平台,撬动TikTok留下的空白市场。 连夜招募的“英文审核”反映了什么? 面对流量的猛增,小红书显然已经嗅到了机会。平台据称正在连夜招募英文审核团队,足见其对全球化的重视和危机意识。审核机制的建立是平台内容生态的重要一环,尤其是当国外用户涌入时,如何维持内容的合法性、合规性和调性,将决定小红书能否将这波流量真正留住。 目前来看,这种快速扩展反映了小红书的敏捷反应能力,但从长期来看,审核机制的完善需要时间,语言和文化隔阂可能会导致内容质量在短期内下降。同时,海外用户的内容生产习惯与中国用户不同,是否能够在算法推荐和审核效率之间找到平衡,也是一个值得关注的问题。 小红书的变现模式是否支撑得住? 流量增长对于任何平台来说都是一次巨大的红利,但能否将流量转化为收入才是真正的考验。小红书的商业模式以种草电商为核心,通过“内容+电商”的闭环完成流量变现。然而,国际市场中用户的购买力、消费习惯以及对本土化商品的接受程度,都可能成为变现过程中的障碍。 国际用户的涌入如果只是短期行为,或者消费习惯难以转化为实际的电商订单,那么平台即便流量激增,也很难转化为长期收益。相比之下,TikTok的变现模式更依赖广告,而小红书的广告收入占比相对较低。如果能够快速调整策略,比如增加短视频广告位或推出国际版电商模块,小红书或许能在全球市场中占得一席之地。...
  3. 剑桥网红餐厅 The Ivy Cambridge Brasserie 上周刚过40岁生日,媳妇带我去剑桥的一家网红餐厅——The Ivy Cambridge Brasserie。这家餐厅是朋友推荐的,和那家Trinity一样很有名,可惜我们在剑桥待了近10年才知道。 The Ivy Cambridge Brasserie 是剑桥市中心一家备受欢迎的网红餐厅,位于历史悠久的 Trinity Street。餐厅设计时尚典雅,融合了现代与经典元素,为食客提供了一个舒适而奢华的用餐环境。这里的菜单丰富多样,覆盖全天用餐,从早餐到晚餐以及下午茶,提供英式经典美食如松露鸡肉派、英式早餐等,也有一些国际风味的菜肴。得天独厚的位置和独特的氛围使得 The Ivy Cambridge Brasserie...
  4. 负电价活久见: 安装Octopus智能电表省电费甚至赚钱 前几周我的电气公司 Octopus 终于来装智能电表了(Smart Meter),虽然是免费安装的,但是排队排了有两三年了吧。因为之前一直写邮件催的时候就老是说 Not Ready。 收到邮件说可以安装智能电表我还是相当开心和期待的,因为已经听说这玩意好,但是还是得亲身体验一下。工程师来安装大概不到2小时,其中需要停电闸一会儿,重新接下线。装好后,给了个小册子,自动切换到了 Agile 的电价,也就是每半小时的电价都不一样,提前一天可以在手机App和网站上查得。 正好在原来的电价计费合同快要结束前2天换到了智能电表计价 Octopus Agile方式,但是系统还是扣了我75英镑 Exit Fee (提前合同结束得交违约费),不过我一个电话打过去,公司很爽快就给我退了。...
  5. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  6. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  7. ACM题解系列之 – 最小堆栈 (Min Stack) 没事刷刷题能防止老年痴呆, 而且也能让你随时处于最佳状态, 随时都可以炒老板鱿鱼另谋高就. 题目: 设计一个堆栈(Stack)使 push, pop, 和取最小 min 操作时间复杂度都是 O(1). 这题的难点就是在于怎么样用O(1)常数时间复杂度来取得堆栈里的最小值. class MinStack {...
  8. HPZ800服务器主板太老不支持超过2TB的大硬盘 我家里一直用的是HPZ800服务器, 很吵, 很老, 虽然这台服务器已经有十年之久(我在EBAY上买来用了五年多了), 但是即使放到今天, 这服务器速度依旧很快, 很稳定. 由于服务器用的是ECC较验内存, 所以基本上不重启关机. HPZ800主机有两个硬核CPU – 因特志强 X5650 – 每个CPU是12核....

Sui区块链编程: 获取最新块高度(NodeJs/Javascript函数 Latest Block Number/Height)


获取最新区块号(高度)是开发人员在去中心化系统中常见的任务。如果你正在使用 Sui 区块链,并希望通过 Node.js 和 JavaScript 获取最新的区块高度,以下是一个简单的实现方法。

Sui 是一个高性能、可扩展的区块链,以低延迟和创新架构而闻名。与 Sui 的交互需要利用其 API,这些 API 允许开发人员无缝查询区块链数据并与智能合约交互。首先,确保你已在计算机上设置了 Node.js 环境并安装了必要的依赖项。

了解 Sui 区块链:Sui区块链简介

首先,创建一个新的 Node.js 项目。你可以使用以下命令初始化项目:

mkdir sui-block-height
cd sui-block-height
npm init -y

接下来,安装 Axios 库,它通常用于在Node.js中发起 HTTP 请求。我们将用它从 Sui 区块链 API 获取数据:

npm install axios

现在,创建一个名为 getLatestBlock.js 的文件,并在你喜欢的代码编辑器中打开。在这个脚本中,我们将编写一个函数来获取最新的区块高度。Sui 区块链提供了一个 RPC 端点,允许你查询其状态。这个端点是获取区块数据的关键。

以下是代码:

const axios = require('axios');

// Sui RPC 端点 - 如果使用特定网络,请替换为实际端点 
const SUI_RPC_URL = 'https://fullnode.sui.io/v1';

async function getLatestBlockHeight() {
    try {
        // 向 Sui RPC 端点发送 POST 请求
        const response = await axios.post(SUI_RPC_URL, {
            jsonrpc: '2.0',
            id: 1,
            method: 'sui_getLatestCheckpointSequenceNumber',
            params: []
        });
        if (response.data && response.data.result !== undefined) {  
            console.log(`最新区块高度: ${response.data.result}`);  
            return response.data.result;  
        } else {  
            throw new Error('响应结构异常');  
        }  
    } catch (error) {  
        console.error('获取区块高度失败:', error.message);  
        throw error;  
    }  
}

// 运行函数
getLatestBlockHeight().catch((err) => {
    console.error('Failed to fetch the block height:', err);
});

Node.js 代码解析

  • Axios 请求:我们使用 Axios 向 Sui RPC 端点发送 POST 请求。方法 sui_getLatestCheckpointSequenceNumber 用于获取区块链上的最新区块号(或检查点序列号)。
  • 错误处理:正确的错误处理可以确保网络错误或响应格式异常被记录,便于调试。
  • 日志记录:函数将最新的区块高度输出到控制台,这对于快速测试或调试非常有用。

在运行脚本之前,确保 Sui RPC 端点正确且可访问。示例中提供的 URL 指向 Sui 主网的全节点端点。如果你使用的是测试网或本地实例,请将 SUI_RPC_URL 变量替换为合适的端点。

运行脚本的命令:

node getLatestBlock.js

如果设置正确,你应该在控制台中看到打印的最新区块高度。此函数可以轻松集成到更大的应用程序中,或通过修改 RPC 方法和参数来适应其他区块链数据的获取需求。

实时交互区块链数据是构建去中心化应用程序的关键技能。借助 Sui 区块链强大的 API 和 Node.js 的简单性,你可以快速获取最新区块高度,并将此信息用于各种用途,例如监控网络、更新用户界面或触发应用程序中的特定操作。

随着 Sui 生态系统的发展,及时关注其文档和最佳实践可以确保你的集成高效且可靠。

英文:NodeJs/Javascript Function to Get the Latest Block Number (Height) on the Sui Blockchain

Sui 区块链编程

本文一共 729 个汉字, 你数一下对不对.
Sui区块链编程: 获取最新块高度(NodeJs/Javascript函数 Latest Block Number/Height). (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c Sui区块链编程: 获取最新块高度(NodeJs/Javascript函数 Latest Block Number/Height) Javascript Node Js Sui 区块链 学习笔记 小技巧 程序设计 计算机
The post Sui区块链编程: 获取最新块高度(NodeJs/Javascript函数 Latest Block Number/Height) first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 油管视频/Youtube Premium会员的好处: 用了就回不去了 从前年开始,我成为了 YouTube 会员,不过中间时断时续,因为觉得价格有点贵。在英国,YouTube 家庭会员每月费用是 19.99 英镑(可供五位家人共享),而个人会员则是每月 12.99 英镑。去年回国前,我暂停了一段时间的会员服务,但回到英国后发现自己已经离不开 YouTube 会员了。 成为会员的最大好处就是没有广告。最初,YouTube 是没有广告的,但随着平台上视频数量激增,广告也逐渐多了起来。如今,YouTube 已然是长视频的王者,谷歌当年的收购绝对算得上是一次非常成功的商业决策,足以写进教材。随着视频数量越来越多,用户一辈子也看不完平台上的内容,所需的服务器资源也水涨船高。因此,谷歌插入广告确实无可厚非。然而,从最开始的一两个广告,到如今非会员用户每隔五分钟就得忍受一次广告,用户体验确实大打折扣。 会员的另一个好处是可以下载视频,不过并不是直接下载为视频文件.mp4,而是保存在设备上。这样一来,可以提前下载好音乐或视频,开车时就无需耗费流量了。 此外,YouTube...
  2. 负电价活久见: 安装Octopus智能电表省电费甚至赚钱 前几周我的电气公司 Octopus 终于来装智能电表了(Smart Meter),虽然是免费安装的,但是排队排了有两三年了吧。因为之前一直写邮件催的时候就老是说 Not Ready。 收到邮件说可以安装智能电表我还是相当开心和期待的,因为已经听说这玩意好,但是还是得亲身体验一下。工程师来安装大概不到2小时,其中需要停电闸一会儿,重新接下线。装好后,给了个小册子,自动切换到了 Agile 的电价,也就是每半小时的电价都不一样,提前一天可以在手机App和网站上查得。 正好在原来的电价计费合同快要结束前2天换到了智能电表计价 Octopus Agile方式,但是系统还是扣了我75英镑 Exit Fee (提前合同结束得交违约费),不过我一个电话打过去,公司很爽快就给我退了。...
  3. 测测你的幸运 – Linux Fortune-Teller LINUX 下有很好很好玩的命令,之前已经介绍过: figlet, rig, curl. 现在推荐另一个 命令 fortune 是用来随机显示一段(句)话的.fortune 在英文里就是幸运的意思. 这个命令可以不需要 参数 如果没有 可以通过 apt-get...
  4. HPZ800服务器主板太老不支持超过2TB的大硬盘 我家里一直用的是HPZ800服务器, 很吵, 很老, 虽然这台服务器已经有十年之久(我在EBAY上买来用了五年多了), 但是即使放到今天, 这服务器速度依旧很快, 很稳定. 由于服务器用的是ECC较验内存, 所以基本上不重启关机. HPZ800主机有两个硬核CPU – 因特志强 X5650 – 每个CPU是12核....
  5. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  6. 给孩子零花钱培养孩子正确的金钱观价值观 两个娃已经不知不觉7岁8岁了. 媳妇和我商量一下决定给孩子每人每周5英镑的零花钱(Pocket Money). 这样他们慢慢的就有自己的小积蓄备将来不时之需: 比如朋友聚会生日啥的需要准备礼物. 同时, 我们决定不再给孩子买零食(薯片啥的). 孩子一天好几餐, 晚上睡觉前还得吃零食, 我们就多买了很多水果面包, 健康的食物多吃一些总不是啥坏事. 孩子可以用这些零钱买自己想要的东西, 我们也不再过问. 孩子有自己的决定权. 第一周的时候,...
  7. 剑桥网红餐厅 The Ivy Cambridge Brasserie 上周刚过40岁生日,媳妇带我去剑桥的一家网红餐厅——The Ivy Cambridge Brasserie。这家餐厅是朋友推荐的,和那家Trinity一样很有名,可惜我们在剑桥待了近10年才知道。 The Ivy Cambridge Brasserie 是剑桥市中心一家备受欢迎的网红餐厅,位于历史悠久的 Trinity Street。餐厅设计时尚典雅,融合了现代与经典元素,为食客提供了一个舒适而奢华的用餐环境。这里的菜单丰富多样,覆盖全天用餐,从早餐到晚餐以及下午茶,提供英式经典美食如松露鸡肉派、英式早餐等,也有一些国际风味的菜肴。得天独厚的位置和独特的氛围使得 The Ivy Cambridge Brasserie...
  8. Pi币简介: 这真的是区块链上的虚拟货币么? 前几年就听说有一个币叫Pi,但又有听说这币就是屎币不靠谱,说是手机装个APP就能挖。 Pi币(Pi Network)是一种由移动应用程序推广的加密货币项目,据称其目标是让普通人能够通过手机“挖矿”来获得加密货币。以下是对Pi币的详细介绍: Pi币的特点与工作机制 挖矿方式 Pi币的挖矿与传统的工作量证明(PoW,如比特币)不同,它通过一款手机应用完成。用户每天登录应用,点击“挖矿”按钮,即可开始“挖矿”。这种机制主要是为了降低参与的技术门槛和硬件成本。 共识机制 Pi币声称使用的是一种基于“Stellar Consensus Protocol”(SCP,恒星共识协议)的机制。这种共识机制并不像比特币或以太坊那样依赖大量计算能力,而是依赖信任图谱,即用户间的信任关系来达成共识。 无需耗费算力 Pi币的挖矿并不依赖用户手机的计算资源,因此不会显著增加电池消耗或数据使用。这与其他加密货币的能耗问题形成了鲜明对比。 网络层级 先锋(Pioneer):普通用户,每天签到获得Pi币。 贡献者(Contributor):构建信任图谱,通过邀请新用户加入。...

编程: NodeJs/Javascript 函数检查Tron/波场区块链上的交易是否已确认(TronGrid API)


我们想知道给定的交易是否已经在 Tron/波场 区块链上确认,这可以通过 TronGrid API 轻松实现。

tron-blockchain 编程: NodeJs/Javascript 函数检查Tron/波场区块链上的交易是否已确认(TronGrid API) Javascript 区块链 波场 (TRON) 程序设计

tron-blockchain

为了确保交易在Tron/波场区块链上被确认,验证逻辑应关注交易的状态,这表明交易是否已被 Tron 虚拟机(TVM)成功处理。以下是正确的验证方法:

检查 receipt.result

验证交易成功的主要标志是 receipt.result 字段。值为 “SUCCESS” 表明交易已成功处理且无任何错误。

确认区块号

交易仅在被包含进一个区块后才算确认。确保 transactionInfo.blockNumber 已定义且与预期的区块一致。

考虑额外的指标

某些交易可能不会生成 net_usage,但可能会产生 net_fee。检查诸如 net_feenet_usage 的任何资源使用情况,可以让验证逻辑更加全面和完全可靠。

避免过早确认

确保交易不再是挂起状态,并已成功广播到网络中。

验证逻辑

以下是处理各种边界情况的逻辑:

const isConfirmed = transactionInfo =>
  transactionInfo.blockNumber !== undefined && // 确保交易已包含在区块中 
  transactionInfo.receipt && // Receipt is present
  (
    transactionInfo.receipt.result === 'SUCCESS' || // 明确的成功结果
    transactionInfo.receipt.net_usage > 0 || // 使用了资源
    transactionInfo.receipt.net_fee > 0 // 产生了费用
  );

代码解释:

  • transactionInfo.blockNumber:确保交易已成为区块链的一部分。
  • transactionInfo.receipt.result:确认交易执行的状态。
  • transactionInfo.receipt.net_usage / transactionInfo.receipt.net_fee:验证资源的使用情况,确保交易对链上状态有实际影响。

最佳实践:

  • 监控交易事件:使用 TronGrid 的事件订阅功能,实时跟踪交易的确认状态。
  • 增加确认等待:等待多个区块确认,以减少链重组导致交易无效的风险。
  • 记录并处理错误:如果交易失败,请检查 contractResult 和 logs 中的错误详情。

这种方法可确保 Tron 系统中的交易确认过程稳健可靠。

完整的 JavaScript函数代码用于验证波场区块链上的交易

以下是一个基于 Node.js(JavaScript)的函数,它可以通过 TronGrid API 确认或验证 Tron 区块链上的交易。此函数需要使用 axios 库来执行 HTTPS API 调用。

const axios = require('axios');

async function isTransactionConfirmed(transactionID, appKey) {
    try {
        const response = await axios.post(
            'https://api.trongrid.io/walletsolidity/gettransactioninfobyid',
            { value: transactionID },
            {
                headers: {
                    'accept': 'application/json',
                    'content-type': 'application/json',
                    'TRON-PRO-API-KEY': appKey
                }
            }
        );
  
        const transactionInfo = response.data;
        const isSuccess = (transactionInfo.receipt && transactionInfo.receipt.result === 'SUCCESS') || ((transactionInfo.blockNumber !== undefined) && (transactionInfo.receipt.net_usage > 0 || (transactionInfo.receipt.net_fee > 0)));
        const blockNumber = transactionInfo.blockNumber;
        
        console.log(`BlockNumber ${blockNumber}, ${JSON.stringify(transactionInfo)} Transaction ID: ${transactionID} - Status: ${isSuccess ? 'Confirmed' : 'Failed'}`);
        if (!isSuccess) {
            console.log(JSON.stringify(transactionInfo));
        }
        return {
          "ok": isSuccess, 
          "block": blockNumber
        };
    } catch (error) {
        console.error('Error verifying transaction:', error);
        throw error;
    }
}

英文:NodeJs/Javascript Function to Check if a Transaction is Confirmed on Tron Blockchain via TronGrid API

区块链技术

本文一共 540 个汉字, 你数一下对不对.
编程: NodeJs/Javascript 函数检查Tron/波场区块链上的交易是否已确认(TronGrid API). (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 编程: NodeJs/Javascript 函数检查Tron/波场区块链上的交易是否已确认(TronGrid API) Javascript 区块链 波场 (TRON) 程序设计
The post 编程: NodeJs/Javascript 函数检查Tron/波场区块链上的交易是否已确认(TronGrid API) first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 给孩子零花钱培养孩子正确的金钱观价值观 两个娃已经不知不觉7岁8岁了. 媳妇和我商量一下决定给孩子每人每周5英镑的零花钱(Pocket Money). 这样他们慢慢的就有自己的小积蓄备将来不时之需: 比如朋友聚会生日啥的需要准备礼物. 同时, 我们决定不再给孩子买零食(薯片啥的). 孩子一天好几餐, 晚上睡觉前还得吃零食, 我们就多买了很多水果面包, 健康的食物多吃一些总不是啥坏事. 孩子可以用这些零钱买自己想要的东西, 我们也不再过问. 孩子有自己的决定权. 第一周的时候,...
  2. 剑桥网红餐厅 The Ivy Cambridge Brasserie 上周刚过40岁生日,媳妇带我去剑桥的一家网红餐厅——The Ivy Cambridge Brasserie。这家餐厅是朋友推荐的,和那家Trinity一样很有名,可惜我们在剑桥待了近10年才知道。 The Ivy Cambridge Brasserie 是剑桥市中心一家备受欢迎的网红餐厅,位于历史悠久的 Trinity Street。餐厅设计时尚典雅,融合了现代与经典元素,为食客提供了一个舒适而奢华的用餐环境。这里的菜单丰富多样,覆盖全天用餐,从早餐到晚餐以及下午茶,提供英式经典美食如松露鸡肉派、英式早餐等,也有一些国际风味的菜肴。得天独厚的位置和独特的氛围使得 The Ivy Cambridge Brasserie...
  3. 负电价活久见: 安装Octopus智能电表省电费甚至赚钱 前几周我的电气公司 Octopus 终于来装智能电表了(Smart Meter),虽然是免费安装的,但是排队排了有两三年了吧。因为之前一直写邮件催的时候就老是说 Not Ready。 收到邮件说可以安装智能电表我还是相当开心和期待的,因为已经听说这玩意好,但是还是得亲身体验一下。工程师来安装大概不到2小时,其中需要停电闸一会儿,重新接下线。装好后,给了个小册子,自动切换到了 Agile 的电价,也就是每半小时的电价都不一样,提前一天可以在手机App和网站上查得。 正好在原来的电价计费合同快要结束前2天换到了智能电表计价 Octopus Agile方式,但是系统还是扣了我75英镑 Exit Fee (提前合同结束得交违约费),不过我一个电话打过去,公司很爽快就给我退了。...
  4. 测测你的幸运 – Linux Fortune-Teller LINUX 下有很好很好玩的命令,之前已经介绍过: figlet, rig, curl. 现在推荐另一个 命令 fortune 是用来随机显示一段(句)话的.fortune 在英文里就是幸运的意思. 这个命令可以不需要 参数 如果没有 可以通过 apt-get...
  5. HPZ800服务器主板太老不支持超过2TB的大硬盘 我家里一直用的是HPZ800服务器, 很吵, 很老, 虽然这台服务器已经有十年之久(我在EBAY上买来用了五年多了), 但是即使放到今天, 这服务器速度依旧很快, 很稳定. 由于服务器用的是ECC较验内存, 所以基本上不重启关机. HPZ800主机有两个硬核CPU – 因特志强 X5650 – 每个CPU是12核....
  6. ChatGPT-4 使用 Math Wolfram 插件解决数学脑筋急转弯问题 这篇文章, 我们看一个简单的数学问题(脑筋急转弯), 并用 Python 解决它. 我们看一下LLM(大型语言模型): ChatGPT3.5和ChatGPT4. 通过 ChatGPT-Plus 订阅(目前每月 20 美元 + VAT增值税), 我们可以启用...
  7. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  8. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...

Webpack不解析dayjs的plugin和locale该怎么办?

作者 KotoriK
2024年8月28日 20:54

假设有这么一段代码, 你的Webpack配置报了下述的错误: 你尝试把改为,很快你会发现无济于事,因为ESM的限制规则在它之上。 其实如果写了(但是他们甚至没把esm导出写进package.json),或者你的工程是传统的cjs工程,亦或是你给每个导入都加了扩展名(虽然好像确实有利于解析速度但是真的会有人写嘛)那么你不会遇到这个问题。在编译期最快的解决方案果然还是用webpack配置,顺带也解决一下的默认导入不是esm的问题: 注意dayjs后的$是必要的,它代表精确匹配,否则之后的两个规则都不会命中。你或许可以试试反着写可不可以。 封面图出处:https://www.pakutaso.com/20200930251post-30704.

来源

两年以后,与React道别

作者 KotoriK
2022年12月22日 17:56

Photo by Alex Kubsch on Unsplash 雪猫社从来都少不了折腾。 先是雪先生要求加的表情包FacePack,然后又为了精确统计浏览量连了GA桑的API。之后,因为小图片不能放大看,又加了点击放大图片(Sakurairo里面更喜欢叫灯箱)的simple-img-modal,还为了显示EXIF加了EXIF读取功能。而驱动这些的,自然是前端脚本。 最开始雪猫社的这些附加组件都使用了React作为框架,现在回头看,这并不是一个很匹配我们的使用场景的选择,最直接地体现在React框架给我们带来的重达100kb的额外脚本上。这个大小的脚本会严重地拖慢我们的脚本解析速度,带来性能影响。但其实这也是当时无奈的折中之选:与React 16.x同期的Vue 2.6.x 包大小也要90多近100KB,虽然比React可能小20/30k左右,

来源

❌
❌