ENS 支持多种主流语言。如果有些你知道的 ENS 库没有在本页面陈列出来,请 向我们发起 PR(pull request)。
Javascript
- ensjs,由 ENS 开发者维护
- ethereum-ens(不推荐)
- react-ens-address
- ethers.js
- web3.js
- embark.io
- waffle.io
我应该使用哪个 Javascript 库
如果你用过 web3.js 或 ethers.js ,并且不需要使用创建子域名、转移所有权或更新解析器等功能,那么你可以使用这些库内置的 ENS 特性。
如果你在用 React ,并且只需要在 UI 界面中对 ENS 域名进行正向和反向解析,那么你可以使用 react-ens-address。
如果你用过 ethers.js ,并且只需要对 ENS 域名进行正向和反向解析,那么你可以使用 ethers.js 库中对 ENS 的支持。
如果你想要将 ENS 实例部署到您的开发环境中,那么你可以使用 emabark.io 或 waffle.io ,它们可以让你在以太坊测试实例中配置和部署 ENS 注册表。
其他情况下,建议使用 ensjs 库。
直接访问智能合约
当前所有的 ENS 智能合约都是 Truffle 项目,而且是作为 npm 模块(比如:ENS 注册表)发布的。如果你想访问以上库都不支持的函数,可以通过 npm 安装智能合约。
字节码和 ABI 是预编译的,可以从模块中导入。
import { abi , bytecode } from '@ensdomains/ens/build/contracts/ENS.json' |
Java
Kotlin
Python
- web3.py - also see web3.py ENS docs
Go
Command-line
Delphi
后续工作
选定使用哪个库以后,就可以通过阅读 ENS 的使用 ,来学习如何在应用程序中使用你选择的 ENS 库。