이더리움 메인넷(또는 EVM 체인들)에서 해당 컨트랙트가 NFT Contract 인지 체크하는 방법을 알아봅니다.
ERC-721 표준은 EIP-165 인터페이스를 Implement 받아서 만들도록 되어 있습니다.
그리고 EIP-165에는 supportsInterface 함수가 존재하는데, 거기에 NFT interface ID인 0x80ac58cd
를 입력해서 true를 반환하면 NFT Contract 란 것을 확인 할 수 있습니다.
위 이미지처럼 ERC-721 Contract는 supportsInterface 함수를 가지고 있을 것이고, interfaceIddp 0x80ac58cd 입력시 True를 반환합니다.
BAYC Contract : https://etherscan.io/token/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d#readContract
유명한 BAYC Contract에서 호출해보니 역시나 true를 반환하네요..!!