¿Hay alguna manera con web3.js de obtener un contrato abi json, sabiendo solo la dirección del contrato?
Ya no puedo encontrar un enlace en el que expliquen cómo hacer esto, en esta publicación el tipo respondió diciendo que hay una manera de hacer esto pero no está tan bien documentada.
¿Cómo puedo hacer esto?
a) conoce el código fuente del contrato inteligente
programáticamente: vea el enlace a la esencia de la respuesta de Ivan
manualmente: con Remix
b) no conoce el código fuente, pero se verificó el contrato inteligente en uno de los exploradores
Luego, use la búsqueda del explorador de bloques para obtener el ABI del contrato inteligente. Por ejemplo, puede leer el código fuente verificado de los contratos inteligentes en BlockScout , Etherscan , Etherchain
c) no conoce el código fuente && el contrato no está verificado
Puede usar el descompilador de contratos inteligentes de Panoramix para obtener una ABI parcial del contrato inteligente
Para agregar al comentario de o0ragman0o, vea este documento:
https://solidity.readthedocs.io/en/v0.5.2/metadata.html
Describe cómo se deben publicar los metadatos del contrato en Swarm para evitar la administración/acceso centralizados (es decir, Etherscan) a los metadatos del contrato (incluido ABI).
Tengo la misma pregunta antes. Por ahora no es posible, solo puedes hacerlo con solc compile. Aquí hay un ejemplo: https://gist.github.com/tomconte/4edb83cf505f1e7faf172b9252fff9bf
siempre puede resolver y luego llamar al abi desde un archivo o directamente. fuente: Solcjs
o0ragman0o
o0ragman0o