• 简体版 | 繁體版
  • 联系我们
  • 加入我们
  • 关于我们
  •  
  • 首页
  • 快讯
  • 价值号
  • 视频
  • 专题
  • 滚动
  • 入驻价值号
  • 碳链APP
    微信公众号

    扫码下载App

  • 登录
  • 微信公众号

    微信公众号

导航
  • 首页
  • 快讯
  • 区块链+
  • 价值号
  • 视频
  • 专题
  • DeFi优选
碳链价值APP
专注服务于金融科技和区块链
立即打开

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

ChinaDeFi •  2021-11-24
有多种方法转换一个ENS地址

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

、

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

介绍

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

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

1:使用ENS.js

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

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

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

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

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

项目设置

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

解释

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

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

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

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

useEffect((): any => { ...body code here... }, [inputAddress])

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

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

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

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

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

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

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

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

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

return语句的基本意思是,if valid ENS address passed in, return the ETH address…otherwise, return 0。你还会注意到返回的数据采用来自getQueryENSForETHAddress。

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

然后,返回三个值:

return [parseInt(ethAddress, 16) !== 0, ethAddress, isLoading]

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

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

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

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

展开全文
打开碳链价值APP  查看更多精彩资讯
声明:本文内容为作者独立观点,不代表碳链价值立场,且不构成任何投资理财建议。
0 0
ENS

扫一扫,分享到微信

相关推荐

如何将波卡的账户添加到ENS域中? 价值号

如何将波卡的账户添加到ENS域中?

Polkadot生态研究院 2022-05-08 价值号
波卡ENS以太坊Polkadot
ENS具有多链支持的特性,因此波卡的账户也能添加到ENS中以获得域名
ENS域名炒作故事:贵州茅台股票代码ENS成交价达26940美元 滚动

ENS域名炒作故事:贵州茅台股票代码ENS成交价达26940美元

区块链资讯 2022-05-08 滚动
ENSNFT
有分析人士指出,作为web3的入口级产品,目前数字域名还解决了不了跨链场景的需求。
下一个NFT热潮?稀有ENS域名成「新宠」 滚动

下一个NFT热潮?稀有ENS域名成「新宠」

星球日报 2022-04-29 滚动
ENSNFT
过去一周,ENS 的域名注册增加了 119%

碳链快讯更多 ›

2022-05-23

Tether:我们与Terra完全不同,且拥有足够的储备维持USDT稳定

2022-05-23

FTX将收购券商交易初创公司,目前仍处于初期阶段

2022-05-23

NBA巨星魔术师约翰逊发布个人NFT系列

2022-05-23

CoinDesk将在Polygon上发行新的DESK代币

2022-05-23

链游The Unfettered完成250万美元融资,Animoca Brands参投

2022-05-23

美联储调查:去年有12%的美国成年人使用加密货币

2022-05-23

电商巨头eBay首次发行NFT

2022-05-23

瑞银CEO:将于明天在新加坡推出数字财富产品Circle One

2022-05-23

市场消息:游戏驿站推出加密货币和NFT钱包

2022-05-23

三井住友信托将与Bitbank成立合资企业,为机构投资者提供数字资产托管服务

2022-05-23

GameFi平台GEMS获得GEM Group 5000万美元投资承诺

2022-05-23

美国首例加密货币刑事制裁案:向制裁国家发送1000万美元比特币

2022-05-23

法国巴黎银行加入摩根大通的区块链网络Onyx进行固定收益交易

2022-05-23

厦门“元宇宙产业人才基地”揭牌

2022-05-23

恒生指数宣布推出恒生中国元宇宙指数

2022-05-23

CV VC将推出非洲区块链投资基金,拟筹资1000万-5000万美元

2022-05-23

奢侈品牌巴黎世家将在美国提供加密货币支付方式

2022-05-23

吉宏股份参与设立元宇宙股权投资基金,深交所要求其说明是否蹭元宇宙热点概念

2022-05-23

华谊兄弟与华胜天成达成战略合作,发力元宇宙内容赛道

2022-05-23

广州天河成立元宇宙联合投资基金,总规模逾200亿元

2022-05-23

知情人士:BSN计划8月份在海外推出开源国际版本“BSN Spartan Network”

2022-05-23

元宇宙App BUD完成3680万美元B轮融资,红杉资本印度领投

2022-05-23

MetaMask正在招聘产品营销经理

2022-05-23

中办、国办:加快文化产业数字化布局

2022-05-23

a16z最新报告:Web3用户数到2031年将达10亿,区块链就像过去十年的移动电话

2022-05-22

马斯克:法币与加密货币的竞争中,我支持加密货币

2022-05-22

Ava Labs CEO:Avalanche在UST崩盘中损失了6000万美元

2022-05-22

3位密码学科学家获得理论计算机最高荣誉“2022年哥德尔奖”

2022-05-22

华尔街日报:加密资产投资或存在内幕交易问题

2022-05-21

V神:针对DeFi的批评不能“一杆子打死一船人”

2022-05-21

国内首家主打IP原创数藏平台「Gistoria集幻」即将上线

2022-05-21

华策影视:公司数字藏品已成为常态化业务

2022-05-21

阿里大文娱旗下数字藏品平台“鱿物”上线

2022-05-21

V神:我已不再是亿万富翁了

2022-05-21

5月份ENS收入超过800万美元,创历史新高

2022-05-21

亚马逊副总裁:更关注开发影响现实世界的技术,而不是所谓的元宇宙

2022-05-21

欧洲央行行长:加密货币“一文不值”,应该受到监管

2022-05-21

Pantera Capital合伙人发文介绍创业者的熊市生存之道

2022-05-21

银泰百货推出多款数字藏品

2022-05-21

Coinbase联合创始人Fred Ehrsam买入7500万美元COIN股票

2022-05-21

OpenSea推出Web3市场协议Seaport Protocol

2022-05-20

DeFi 流动性管理协议 iZUMi Finance 完成 3000 万美元融资

2022-05-20

G7:加密资产应与传统金融资产遵循相同标准

2022-05-20

OpenSea交易额突破300亿美元

2022-05-20

数字支付公司Xendit完成3亿美元D轮融资,Coatue等领投

2022-05-20

比尔·盖茨:没有投资任何加密资产

2022-05-20

贵州茅台数字藏品活动已暂停

2022-05-20

前美国驻华大使:全球合作对于促进Web3.0的发展非常重要

2022-05-20

Gopax运营商Streami完成约2368万美元B轮融资

2022-05-20

塞浦路斯已起草加密资产监管法案

推荐文章

  • Web3是什么?为何应该关注?

    2021-12-10

  • Vitalik Buterin:以太坊终局之战

    2021-12-07

  • 万字长文展望2022:元宇宙将催生哪些行业新机会?

    2021-12-04

  • 纽约杂志:从普通人到加密人,如何审慎地掉进「兔子洞」

    2021-12-03

  • 红杉资本:为什么我们要以NFT形式拍卖2005年YouTube的投资备忘录

    2021-12-03

价值号更多 ›

吉时通信
吉时通信
文章: 118
  • 元宇宙的运行之「DAO」:在元宇宙中如何获得回报?
  • 以太坊Layer2:元宇宙创新之基石、区块链应用之钥匙
  • 从比特币期货ETF获批,看全球区块链产业变迁
链集市ChainMarket
链集市ChainMarket
文章: 140
  • 区块链技术将如何改变艺术世界?
  • 区块链技术将如何改变艺术领域?
  • 区块链产业周刊|工信部信息技术发展司组织召开区块链产业发展座谈会;网易云音乐举办首个“元宇宙”上市仪式;维基百科铸造 NFT
加密谷Live
加密谷Live
文章: 585
  • 公链Fantom:从数据视角解读Fantom为何会暴涨?
  • Layer 2时代:照亮Play to Earn游戏的前路
  • 解析 DeFi 领域的助力器:去中心化身份 DID
换一批

热门标签

新基建 比特币 以太坊 矿业 DeFi 共识对话 区块链+ 研报 美联储 央行数字货币 无限QE 加密衍生品 AI 云计算 大数据 5G 政策 交易所 稳定币 电子支付 Libra 算力产业 联盟链 公链 区块链 加密货币 Nervos Cosmos EOS STO

邮件订阅

及时、全面、专业、准确的资讯与数据,致力于为区块链爱好者以及数字货币投资者提供最好的服务。

App内打开

邮件订阅

及时、全面、专业、准确的资讯与数据,致力于为区块链爱好者以及数字货币投资者提供最好的服务。

Moshou

碳链价值是集资讯、行情、数据于一身的区块链信息服务平台,我们追求及时、全面、专业、精确的资讯与数据,致力于为区块链创新者和数字货币投资者提供优质的服务。

关于我们 加入我们 联系我们 隐私条款
微信公众号

扫一扫关注微信公众号

Copyright © 2018-2020 碳链价值 京ICP备18046423号
下载碳链App

下载碳链App

微信公众号

微信公众号

微信公众号

微信公众号

打赏文章作者

支付宝打赏二维码 支付宝扫一扫打赏
微信打赏二维码 微信扫一扫打赏

# 热门搜索 #

CBDC 比特币 DeFi 以太坊 区块链