网站运营与建设作业,西宁网站建设嘉荐君博l,wordpress脚本,莱芜都市网下载怎么获得ABI#xff1f;
在编译完合约后#xff0c;可以在左边下面点击复制ABI ABI#xff08;Application Binary Interface#xff0c;应用二进制接口#xff09;是用来让前端或服务端 JavaScript 代码与智能合约进行交互的桥梁#xff0c;它描述了合约的函数、事件和…怎么获得ABI
在编译完合约后可以在左边下面点击复制ABI ABIApplication Binary Interface应用二进制接口是用来让前端或服务端 JavaScript 代码与智能合约进行交互的桥梁它描述了合约的函数、事件和结构信息。 简单理解 ABI 的作用
你可以把 ABI 想成“说明书”或“函数清单”它告诉你 合约有哪些方法比如 mint, ownerOf, balanceOf 每个方法需要哪些参数返回什么 哪些是 view 函数不花费 gas哪些是 transaction 函数会消耗 gas 有没有事件event事件结构是怎样的。 示例 ABIJSON 格式
[{inputs: [{internalType: string,name: tokenURI,type: string}],name: mint,outputs: [],stateMutability: nonpayable,type: function},{inputs: [{internalType: address,name: owner,type: address}],name: tokensOfOwner,outputs: [{internalType: uint256[],name: ,type: uint256[]}],stateMutability: view,type: function}
]ABI 的用途
你在 NestJS 或前端项目中这样使用
import { ethers } from ethers;
import SimpleNFTABI from ./SimpleNFT.abi.json;const contract new ethers.Contract(contractAddress, SimpleNFTABI, signerOrProvider);你能用 contract.mint(...)、contract.tokensOfOwner(...) 就是因为 ABI 里定义了这些函数。 ✅ 怎么获取 ABI
在你用 Hardhat / Foundry / Remix / Truffle 编译完合约后可以在这些路径找到 ABI Hardhat
artifacts/contracts/SimpleNFT.sol/SimpleNFT.json打开里面你会看到一段很长的 JSON其中包含 abi bytecode metadata
你只需要复制 abi 部分即可。 总结一句话 ABI 是连接你写的智能合约和外部应用前端 / 后端的“函数说明书”编译合约后拷贝 abi 部分就能让程序识别你合约有哪些功能怎么调用。 如果你想我可以帮你提取你合约对应的 ABI JSON并打包成一个 SimpleNFT.abi.json 文件。需要的话请告诉我。