木星链 木星链
Ctrl+D收藏木星链
首页 > 火必 > 正文

ENS:教程:如何在web应用程序中将ENS地址转换为ETH地址

作者:

时间:1900/1/1 0:00:00

在本教程中,我将向大家展示我能想到的最简单的例子,如何在web应用程序中将ENS地址转换为ETH地址。

知道如何做是很有价值的,因为大多数智能合约只接受ETH地址,而不接受ENS地址。

介绍

如何做到这一点的简单答案是,用户只需要从子图中查询数据。

有多种方法转换一个ENS地址:

1:使用ENS.js

我曾经使用这个库来转换ENS地址。但是,它不适用于位于layer2的应用程序,所以我不会展示如何以这种方式进行操作。

2:使用ENS提供的去中心化子图

逾300万美元NFT在4月被盗,环比下降68%:金色财经报道,PeckShield监测显示,2023年4月,价值约323万美元NFT被盗,环比下降68%。半数被盗的NFT在2小时内迅速在市场上售出。大约70%的被盗NFT首先在Blur上出售,27.94%在OpenSea上出售。[2023/5/1 14:37:16]

这是最可靠的方法,因为它是去中心化的。然而,当我在ENSdiscord中询问时,他们说不要用这个。此外,每次用户在你的应用程序上查询这个子图时,你都要花钱——所以它不是免费的。我认为ENS计划告诉每个人使用这个子图,但我可能是错的,我不确定他们会等待什么。

3:使用ENS提供的中心化子图

加密钱包公司Dfns:“Magic Links”存在严重漏洞:金色财经报道,加密钱包初创公司 Dfns 表示,越来越多的加密钱包和网络应用程序采用的无密码登录方法 Magic Links 存在严重漏洞,Dfns 将其发现的漏洞归类为“零日”漏洞利用。Dfns 在一份声明中表示,该漏洞可能“对全球经济的很大一部分构成相当大的风险。 受影响的服务表示,在 Dfns 发布详细介绍所谓的零日漏洞的博客文章之前,他们几乎没有收到任何通知。

Magic Links是由网站或应用程序生成的唯一的一次性 URL,用于验证用户身份而无需他们输入密码。当用户单击 Web 应用程序发送给他们的Magic Links时,它会验证他们的身份并将他们登录到他们的帐户中。[2023/2/24 12:27:50]

这个子图是免费使用的,也是巴黎高等师范学院推荐人们使用的。这是我将教如何使用这里。

Azuki系列NFT近24小时交易额涨幅超200%:金色财经报道,据OpenSea最新数据显示,Azuki系列NFT近24小时的交易额为6454ETH,涨幅达268%,近24小时交易额排名位列OpenSea第二,地板价为15.18ETH。[2023/2/19 12:15:14]

项目设置

首先,在本地克隆repo。然后,安装所有依赖项并运行本地服务器。如果要检查localhost,就应该在页面上看到一个输入。如果输入了一个有效的ENS地址,就将看到有效性和ETH地址正在浏览器控制台中登录,确认转换。

解释

既然你已经有了所有的代码,我将用本教程的剩余部分来解释它如何线性工作。

腾讯云与Web3公司Strange Universe Technology签署谅解备忘录:9月13日消息,腾讯云宣布与新加坡Web3公司Strange Universe Technology签署谅解备忘录(MoU),双方将在元宇宙虚拟世界中探索合作机会并帮助企业在虚拟环境中适应和发展,携手打造集成、混合、高效的虚拟现实技术平台。Strange Universe Technology将使用腾讯云的元宇宙产品和云解决方案,比如基于实时云渲染技术的一站式解决方案虚拟交互空间(VIS),结合腾讯云旗下的腾讯实时通信(TRTC)、游戏多媒体引擎(GME)、数字化身产品和服务,VIS还将提供涵盖虚拟直播、虚拟会议、展览、活动等多场景虚拟空间交付产品,帮助企业轻松搭建各种元宇宙场景模板。(finance.yahoo)[2022/9/13 13:26:38]

在主页上有一个输入(src/pages/index.tsx)。输入时,它设置inputAddress状态变量。

每当这个状态变量发生变化时,它都会被这里的useENSAddresshook检测到:

现在打开Reacthook的文件(src/components/useENSAddress.ts)。你可以看到它使用了里面的useEffect的hook。这个useEffect的依赖项列表中有一个inputAddress参数。这会导致useEffect主体在每次inputAddress改变时(通过用户输入)被调用。

useEffect(():any=>{...bodycodehere...},)

那么当调用useEffect的主体时会发生什么呢?几乎所有发生的都是run方法被调用。

run方法通过调用其他方法来设置ETH地址。让我们检查一下那个方法,因为它是调用堆栈中的下一个。

打开src/stores/ensStore.ts。里面是queryENSForETHAddress方法。

首先,它进行软检查,看看传入的值是否为ENS地址。

然后,它查询由HTTP_GRAPHQL_ENDPOINT定义的子图。为了获得我们想要的数据,我们需要创建一个graphql查询。这就是getQueryENSForETHAddress方法的作用。

现在转到那个方法。它正在查询子图以获取传入的ENS地址的数据。

如果你想知道我是怎么想通了如何创建此查询,那么你需要更多关于thegraph和graphql工作的知识。基本上,每个子图都有一个游乐场,我一直在摆弄它,直到我得到了所需的数据。

例如,在playground中,可以输入查询,然后按下播放键,以便查看返回的数据。

现在,如果返回到queryENSForETHAddress,你可以看到数据存储在result变量中:

return语句的基本意思是,ifvalidENSaddresspassedin,returntheETHaddress…otherwise,return0。你还会注意到返回的数据采用来自getQueryENSForETHAddress。

一旦它返回,它可以追溯到useEffect中useENSAddress.ts的文件和设置ethAddress状态变量。

然后,返回三个值:

return

第一个值表示传入的值是否有效。第二个值是从子图中检索到的ETH地址。第三个值表示这些值当前是否正在加载。

差不多就是这样了。完成这个过程后,我将这些值记录到主页上的控制台。

现在你已经知道如何将第一层和第二层的ENS地址转换为ETH地址。

Source:https://medium.com/coinmonks/how-to-convert-ens-address-to-eth-address-in-js-251c6209c208

来源:金色财经

标签:ENSRESDREESSGenshiroQuantum Resistant Ledgerdrep币价格今日行情Marginless

火必热门资讯
KCC:Coinhub与KCC、MojitoSwap圆桌论坛AMA回顾

2021年11月18日16:00,由Coinhub组织的Coinhub中文社区AMA火热开启,本次邀请了两位重磅嘉宾:KCC社区运营负责人Sam和MojitoSwapCMOGloria.

1900/1/1 0:00:00
NFT:Filecoin生态系统新兴重点项目一览

Filecoin生态系统中的新兴重点项目Nftfy,利用Filecoin进行存储;Nftfy为世界上最有价值的NFT提供部分所有权,NFT分数可以在公开市场上“发现”自己的价格.

1900/1/1 0:00:00
比特币:11月23日比特币插针破位底部支撑、空头瀑布即将来袭——文博说币

两周时间比特币价格从69000跌到55000这是任何人无可避免的亏损结局,现实往往给予理想的不是鼓励,每一次都是重磅打击,多头的假动作相信在昨日迷惑了不少人,文博也不例外.

1900/1/1 0:00:00
区块链:金色早报 | 我国首家数字经济人才市场揭牌成立

头条▌我国首家数字经济人才市场揭牌成立11月20日,在2021重庆英才大会上,中国重庆数字经济人才市场正式揭牌成立.

1900/1/1 0:00:00
EFI:区块链头条观察丨DeFi2.0如何挑起大梁?

本文不过多地探讨DeFi1.0,因为DeFi2.0的世界在等着我们。如今,DeFi是一个被广泛使用的术语。大多数人称其为去中心化金融.

1900/1/1 0:00:00
加密货币:蓬勃发展的VC市场对加密货币的未来意味着什么?

如果你在过去两年里,关注过任何类型的金融新闻,你可能会一周又一周、一月又一月地看到这样的头条新闻。从表面上看,这种类型的投资和资本配置显然是一个新行业的价值信号,并重申了对加密货币的强烈出价.

1900/1/1 0:00:00