Introducción al desarrollo en Ethereum
Esta es una guía para principiantes sobre cómo empezar con el desarrollo en Ethereum. Para este tutorial utilizaremos Alchemy (opens in a new tab), la plataforma líder para desarrolladores de cadenas de bloques que da servicio a millones de usuarios del 70 % de las principales aplicaciones de cadenas de bloques, incluyendo Maker, 0x, MyEtherWallet, Dharma y Kyber. Alchemy nos dará acceso a un punto de enlace de la API en la cadena de Ethereum para que podamos leer y escribir transacciones.
¡Le llevaremos desde el registro en Alchemy hasta la escritura de su primer script de Web3! ¡No se necesita experiencia en desarrollo de cadenas de bloques!
1. Regístrese para obtener una cuenta gratuita de Alchemy
Crear una cuenta en Alchemy es fácil, regístrese gratis aquí (opens in a new tab).
2. Cree una aplicación en Alchemy
Para comunicarse con la cadena de Ethereum y utilizar los productos de Alchemy, necesita una clave de API para autenticar sus solicitudes.
Puede crear claves de API desde el panel de control (opens in a new tab). Para crear una nueva clave, vaya a «Create App» (Crear aplicación) como se muestra a continuación:
¡Un agradecimiento especial a ShapeShift (opens in a new tab) por permitirnos mostrar su panel de control!
Rellene los detalles en «Create App» para obtener su nueva clave. Aquí también puede ver las aplicaciones que creó anteriormente y las creadas por su equipo. Obtenga las claves existentes haciendo clic en «View Key» (Ver clave) en cualquier aplicación.
También puede obtener claves de API existentes pasando el cursor sobre «Apps» (Aplicaciones) y seleccionando una. Aquí puede hacer clic en «View Key», así como en «Edit App» (Editar aplicación) para incluir dominios específicos en la lista blanca, ver varias herramientas para desarrolladores y consultar análisis.
3. Haga una solicitud desde la línea de comandos
Interactúe con la cadena de bloques de Ethereum a través de Alchemy utilizando JSON-RPC y curl.
Para solicitudes manuales, recomendamos interactuar con JSON-RPC a través de solicitudes POST. Simplemente pase el encabezado Content-Type: application/json y su consulta como el cuerpo del POST con los siguientes campos:
jsonrpc: La versión de JSON-RPC; actualmente, solo se admite2.0.method: El método de la API de ETH. Consulte la referencia de la API.params: Una lista de parámetros para pasar al método.id: El ID de su solicitud. Será devuelto por la respuesta para que pueda realizar un seguimiento de a qué solicitud pertenece una respuesta.
Aquí hay un ejemplo que puede ejecutar desde la línea de comandos para recuperar el precio del gas actual:
curl https://eth-mainnet.alchemyapi.io/v2/demo \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":73}'
NOTA: Reemplace https://eth-mainnet.alchemyapi.io/v2/demo con su propia clave de API https://eth-mainnet.alchemyapi.io/v2/**your-api-key.
Resultados:
{ "id": 73,"jsonrpc": "2.0","result": "0x09184e72a000" // 10000000000000 }
4. Configure su cliente Web3
Si tiene un cliente existente, cambie la URL de su proveedor de nodo actual a una URL de Alchemy con su clave de API: “https://eth-mainnet.alchemyapi.io/v2/your-api-key"
NOTA: Los scripts a continuación deben ejecutarse en un contexto de nodo o guardarse en un archivo, no ejecutarse desde la línea de comandos. Si aún no tiene Node o npm instalados, siga las instrucciones de instalación de Node.js (opens in a new tab).
Hay muchísimas bibliotecas Web3 que puede integrar con Alchemy; sin embargo, recomendamos usar Alchemy Web3 (opens in a new tab), un reemplazo directo para Web3.js, creado y configurado para funcionar sin problemas con Alchemy. Esto proporciona múltiples ventajas, como reintentos automáticos y un soporte robusto para WebSocket.
Para instalar AlchemyWeb3.js, navegue hasta el directorio de su proyecto y ejecute:
Con Yarn:
yarn add @alch/alchemy-web3
Con NPM:
npm install @alch/alchemy-web3
Para interactuar con la infraestructura de nodos de Alchemy, ejecute en NodeJS o agregue esto a un archivo JavaScript:
const { createAlchemyWeb3 } = require("@alch/alchemy-web3")
const web3 = createAlchemyWeb3(
"https://eth-mainnet.alchemyapi.io/v2/your-api-key"
)
5. ¡Escriba su primer script Web3!
Ahora, para poner manos a la obra con un poco de programación Web3, escribiremos un script simple que imprima el último número de bloque de la red principal de Ethereum.
1. Si aún no lo ha hecho, en su terminal cree un nuevo directorio de proyecto y acceda a él con cd:
mkdir web3-example
cd web3-example
2. Instale la dependencia Web3 de Alchemy (o cualquier otra biblioteca Web3) en su proyecto si aún no lo ha hecho:
npm install @alch/alchemy-web3
3. Cree un archivo llamado index.js y agregue el siguiente contenido:
En última instancia, debe reemplazar
democon su clave de API HTTP de Alchemy.
async function main() {
const { createAlchemyWeb3 } = require("@alch/alchemy-web3")
const web3 = createAlchemyWeb3("https://eth-mainnet.alchemyapi.io/v2/demo")
const blockNumber = await web3.eth.getBlockNumber()
console.log("The latest block number is " + blockNumber)
}
main()
¿No está familiarizado con la programación asíncrona? Eche un vistazo a esta publicación de Medium (opens in a new tab).
4. Ejecútelo en su terminal usando node
node index.js
5. ¡Ahora debería ver el último número de bloque en su consola!
The latest block number is 11043912
¡Genial! ¡Felicidades! Acaba de escribir su primer script Web3 usando Alchemy 🎉
¿No está seguro de qué hacer a continuación? Intente implementar su primer contrato inteligente y ponga manos a la obra con un poco de programación en Solidity en nuestra Guía de contratos inteligentes de Hola Mundo, o siga explorando la documentación de Alchemy (opens in a new tab) para ver más ejemplos.
Regístrese en Alchemy de forma gratuita (opens in a new tab), consulte nuestra documentación (opens in a new tab) y, para conocer las últimas noticias, síganos en Twitter (opens in a new tab).



