BLCOKSDK 개발자 문서와 공식 github에서 이더리움, 클레이튼, 폴리곤, BNC 등 다양한 블록체인 서비스 및 솔루션을 사용자의 프로그래밍 언어에 맞게 제공하고 있습니다.
이 글에서는 blockSDK JS 라이브러리를 사용하여 이더리움 ERC721(NFT)에 대한 정보들을 조회하는 방법을 알아봅니다.
이 글에서는 BLOCKSDK와 자바스크립트를 활용하여 ERC-721(NFT)을 조회하는 방법을 알아볼 겁니다.
BlockSDK에서는 ERC721(NFT)뿐만 아니라 ERC20, ERC1155에 관해서도 서비스를 제공하고 있습니다.
API를 사용하기전에 초기 설정을 해야합니다. BLOCKSDK 사용이 처음이라면 여기를 클릭해 API 사용을 위한 개발 초기 설정방법을 알아보세요.
다음은 자바스크립트를 이용해서 ERC-721(NFT)을 조회하는 예시를 자세히 살펴보겠습니다.
발행된 ERC721(NFT) 컨트렉트의 NFT 목록을 가져옵니다
사용방법
const BLOCKSDK = require('blocksdk-js');
const client = new BLOCKSDK("Node_RPC_TOKEN","https://mainnet-api.blocksdk.com");
client.ethereum.GetSingleNfts({
'contract_address' : "ERC721(NFT) 인터페이스를 기반으로 한 컨트렉트 주소",
'offset' : "목록 시작 위치의 순차 색인 번호 (기본값 0)",
'limit' : "목록의 제한 수 (기본값 10)"
'order_direction' : "NFT 생성일 기준 최신순(desc),과거순(asc) (기본값 desc)",
'includeURI' : "true 인 경우 NFT의 메타데이터 URI 를 반환받는 데이터에 포함 (기본값 false)",
'includeTimestamp' : "true 인 경우 NFT 생성 일자를 반환받는 데이터에 포함 (기본값 false)",
'includeMetadata' : "true 인 경우 NFT의 제목,설명,이미지 등 메타데이터 정보를 데이터에 포함하며, 이미지를 캐싱처리하여 링크를 생성 시킵니다. 10MB 를 초과하는 파일은 캐싱되지 않습니다. (기본값 false)"
}).then(r => console.log(r));
사용예시
const BLOCKSDK = require('blocksdk-js');
const client = new BLOCKSDK("Node_RPC_TOKEN","https://mainnet-api.blocksdk.com");
client.ethereum.GetSingleNfts({
'contract_address' : "0xbe9371326F91345777b04394448c23E2BFEaa826",// Gemesis (OSP) Token
}).then(r => console.log(r));
실행결과
{
data: [
{
contract: '0xbe9371326f91345777b04394448c23e2bfeaa826',
id: '65535',
txHash: '0xc97f085bc35e88ecfe2ba260c4d0502efd8807f3375e5cf92d44ab81f2b63a83',
creator: '0xa7eeaade2936699c2dff523900f8b4aee36df4d4',
owner: '0xa7eeaade2936699c2dff523900f8b4aee36df4d4'
},
...
],
total: 94667,
requestData: { contract_address: '0xbe9371326F91345777b04394448c23E2BFEaa826' }
}
컨트랙트 주소와 토큰 id를 이용하여 해당 토큰의 정보를 조회합니다.
사용방법
const BLOCKSDK = require('blocksdk-js');
const client = new BLOCKSDK("Node_RPC_TOKEN","https://mainnet-api.blocksdk.com");
client.ethereum.GetSingleNftInfo({
'contract_address' : "ERC721(NFT) 인터페이스를 기반으로 한 컨트렉트 주소",
'token_id' : "토큰 고유 ID",
'includeURI' : "true 인 경우 NFT의 메타데이터 URI 를 반환받는 데이터에 포함 (기본값 false)",
'includeTimestamp' : "true 인 경우 NFT 생성 일자를 반환받는 데이터에 포함 (기본값 false)",
'includeMetadata' : "true 인 경우 NFT의 제목,설명,이미지 등 메타데이터 정보를 데이터에 포함하며, 이미지를 캐싱처리하여 링크를 생성 시킵니다. 10MB 를 초과하는 파일은 캐싱되지 않습니다. (기본값 false)"
}).then(r => console.log(r));
사용예시
const BLOCKSDK = require('blocksdk-js');
const client = new BLOCKSDK("Node_RPC_TOKEN","https://mainnet-api.blocksdk.com");
client.ethereum.GetSingleNftInfo({
'contract_address' : "0xbe9371326F91345777b04394448c23E2BFEaa826",// Gemesis (OSP) Token
'token_id' : "65534"
}).then(r => console.log(r));
실행결과
{
contract: '0xbe9371326f91345777b04394448c23e2bfeaa826',
id: '65534',
txHash: '0x66bbbe028af7268ce0e8efa0047c54c7449276221dc68e7f0bc54c47e8c586a7',
creator: '0x998b2fc674f9339c62e077bdefc79bddf98b4c9a',
owner: '0x90d1dea72db2067ec919c0a2487bf035720c25a7',
requestData: {
contract_address: '0xbe9371326F91345777b04394448c23E2BFEaa826',
token_id: '65534'
}
}
이 글을 통해 자바스크립트 언어를 사용하여 이더리움의 ERC-721(NFT)를 조회하는 방법에 대해 알아보았습니다. 이 과정에서 Web3.js와 같은 라이브러리를 활용함으로써, 복잡한 블록체인 기술에 보다 쉽게 접근 할 수 있음을 확인할 수 있었습니다.