Skip to content

ERC721(NFT)

查看账户拥有的erc721 token

ts
/**
 *
 * @static
 * @param {string} node
 * @param {string} account
 * @returns {Promise<any>}
 * @memberof Transaction
 */
static function requestAccountToken(node: string, account: string): Promise<any>
/**
 *
 * @static
 * @param {string} node
 * @param {string} account
 * @returns {Promise<any>}
 * @memberof Transaction
 */
static function requestAccountToken(node: string, account: string): Promise<any>
点我运行代码
const { Transaction } = require('@jccdex/jingtum-lib')

let node = 'https://whskywelldrpc1.jccdex.cn:8443'
let account = 'jHLrB8gcWgtqXcEDSrCxoKJR6faMzTWqLM'
const accountToken = await Transaction.requestAccountToken(node, account)

console.log(accountToken)

获取erc721 token详情

ts
/**
 *
 * @static
 * @param {string} node
 * @param {string} tokenId erc721 id
 * @returns {Promise<any>}
 * @memberof Transaction
 */
static function requestTokenInfo(node: string, tokenId: string): Promise<any>
/**
 *
 * @static
 * @param {string} node
 * @param {string} tokenId erc721 id
 * @returns {Promise<any>}
 * @memberof Transaction
 */
static function requestTokenInfo(node: string, tokenId: string): Promise<any>
点我运行代码
const { Transaction } = require('@jccdex/jingtum-lib')

let node = 'https://whskywelldrpc1.jccdex.cn:8443'
let tokenId = '9F2D44338B7107092DECA4507ACD9C69F917C4756CB65A57EB19898042464F41'
const tokenInfo = await Transaction.requestTokenInfo(node, tokenId)

console.log(tokenInfo)

NFT发行 (管理员)

ts
/**
 * 设置NFT发行权限
 *
 * buildTokenIssueTx
 *
 * @param {string} account
 * @param {string} secret
 * @param {string} publisher
 * @param {number} amount
 * @param {string} token
 * @param {TokenFlag} flag
 * @returns
 * @memberof Transaction
 */
public function setTokenIssue(
  account: string,
  secret: string,
  publisher: string,
  amount: number,
  token: string,
  flag: TokenFlag
)
/**
 * 设置NFT发行权限
 *
 * buildTokenIssueTx
 *
 * @param {string} account
 * @param {string} secret
 * @param {string} publisher
 * @param {number} amount
 * @param {string} token
 * @param {TokenFlag} flag
 * @returns
 * @memberof Transaction
 */
public function setTokenIssue(
  account: string,
  secret: string,
  publisher: string,
  amount: number,
  token: string,
  flag: TokenFlag
)

铸造NFT (NFT发行方)

ts
/**
 * 铸造721
 *
 * @param {string} account
 * @param {string} secret
 * @param {string} receiver
 * @param {string} token
 * @param {string} tokenId
 * @param {TokenInfo[]} [tokenInfos]
 * @returns
 * @memberof Transaction
 */
public function publish721(
  account: string,
  secret: string,
  receiver: string,
  token: string,
  tokenId: string,
  tokenInfos?: TokenInfo[]
)
/**
 * 铸造721
 *
 * @param {string} account
 * @param {string} secret
 * @param {string} receiver
 * @param {string} token
 * @param {string} tokenId
 * @param {TokenInfo[]} [tokenInfos]
 * @returns
 * @memberof Transaction
 */
public function publish721(
  account: string,
  secret: string,
  receiver: string,
  token: string,
  tokenId: string,
  tokenInfos?: TokenInfo[]
)

销毁NFT (NFT发行方)

ts
/**
 * 销毁NFT
 *
 * @param {string} account
 * @param {string} secret
 * @param {string} tokenId
 * @returns
 * @memberof Transaction
 */
public function delete721(account: string, secret: string, tokenId: string)
/**
 * 销毁NFT
 *
 * @param {string} account
 * @param {string} secret
 * @param {string} tokenId
 * @returns
 * @memberof Transaction
 */
public function delete721(account: string, secret: string, tokenId: string)

NFT转账

ts
/**
 * ERC721转账
 *
 * @param {string} account
 * @param {string} secret
 * @param {string} receiver
 * @param {string} tokenId
 * @param {(string | IMemo[])} [memo]
 * @returns
 * @memberof Transaction
 */
public function transfer721(
  account: string,
  secret: string,
  receiver: string,
  tokenId: string,
  memo?: string | IMemo[]
)
/**
 * ERC721转账
 *
 * @param {string} account
 * @param {string} secret
 * @param {string} receiver
 * @param {string} tokenId
 * @param {(string | IMemo[])} [memo]
 * @returns
 * @memberof Transaction
 */
public function transfer721(
  account: string,
  secret: string,
  receiver: string,
  tokenId: string,
  memo?: string | IMemo[]
)
点我运行代码
const { Transaction } = require('@jccdex/jingtum-lib')

let nodes = ['https://whskywelldrpc1.jccdex.cn:8443','https://whskywelldrpc2.jccdex.cn:8443']
const jtTransaction = new Transaction('jingtum', nodes)

const address = '多签账号'
const secret = '多钱账号密钥'
const receiver = '接收NFT地址'
const tokenId = 'NFT通证ID'

const hash = await jtTransaction.transfer721(address, secret, receiver, tokenId)

console.log(hash)

Released under the MIT License.