Estoy tratando de hacer un programa que transfiera todos los tokens no fungibles (erc-721) a una dirección diferente. Ya tengo configurada la parte de transferencia. Pero no tengo ni idea de cómo obtener todos los tokens/contratos nft de una dirección, ya que no pude encontrar nada en línea.
Lo intenté
const myContract = new web3.eth.Contract(abi, token); let balance = await myContract.methods.balanceOf(address)//.call();pero para eso, aún necesitarías la dirección del contrato. ¿Hay alguna manera de hacer lo que estoy tratando de hacer? ¿Solo para obtener todos los tokens de la clave pública (o privada)?
No, dado que cada token es administrado por diferentes contratos, deberá conocer la dirección de esos contratos y llamar a balanceOf(address) .
Hay API que enumeran los tokens más comunes (direcciones de contrato), pero no los incluyen todos.
O llame a un método en la billetera del usuario (deberá llamar a diferentes métodos dependiendo de a qué billetera esté conectado el usuario) que podría proporcionar los tokens actuales que el usuario ha registrado en su billetera, y eso SI esa billetera admite esta función.