Resumen
La API de Solana Devnet es un endpoint RPC público para probar programas y dApps de Solana sin usar SOL real. Admite simulación completa de validadores, despliegue de programas e integración con el runtime paralelo de Solana. Esta guía cubre el endpoint oficial, los límites de tasa, cómo obtener SOL de Devnet y técnicas comunes de depuración.
Lista de verificación para la API de Solana Devnet
Antes de comenzar a construir en Solana Devnet, revisa esta lista para evitar errores comunes:
- Confirma el endpoint: Usa
https://api.devnet.solana.compara HTTP ywss://api.devnet.solana.compara WebSocket. Verifica dos veces que no estás apuntando a Mainnet. - Comprende los límites de tasa: El endpoint público de Devnet es compartido y tiene límites de tasa. Si recibes errores 429, considera un proveedor de RPC dedicado.
- Obtén SOL de Devnet: Usa el faucet oficial de Solana para solicitar tokens de prueba. Los necesitarás para pagar tarifas de transacción y alquiler.
- Establece el nivel de compromiso adecuado: Elige
processed,confirmedofinalizedsegún tu caso de uso. Para la mayoría de las pruebas,confirmedes un buen valor predeterminado. - Usa un validador local para pruebas intensivas: Para iteraciones rápidas, ejecuta
solana-test-validatorlocalmente en lugar de depender del Devnet público. - Planifica para producción: Devnet es solo para pruebas. Cuando pases a Mainnet, necesitarás infraestructura RPC confiable.
¿Qué es la API de Solana Devnet?
La API de Solana Devnet es un conjunto de endpoints JSON-RPC y WebSocket que te permiten interactuar con el clúster de Solana Devnet. Devnet es un entorno de prueba público que refleja la funcionalidad de Mainnet, permitiendo a los desarrolladores desplegar programas, enviar transacciones y probar dApps sin arriesgar fondos reales.
A diferencia de un validador local, Devnet es un clúster compartido con múltiples validadores y nodos API. Esto es útil para probar cómo se comporta tu aplicación en un entorno distribuido, incluida la confirmación de transacciones y la sincronización de estado.
Endpoints de Solana Devnet
Los endpoints oficiales de Solana Devnet son:
| Interfaz | URL |
|---|---|
| RPC HTTP | https://api.devnet.solana.com |
| WebSocket | wss://api.devnet.solana.com |
Estos endpoints son operados por Solana Labs y son gratuitos, pero tienen límites de tasa. Los límites exactos pueden cambiar, así que consulta la documentación oficial para obtener la información más reciente.
Para pruebas de producción o de alto tráfico, es posible que desees usar un proveedor de RPC dedicado como OnFinality, que ofrece RPC de Solana Devnet con límites de tasa más altos y un rendimiento más confiable.
Obtener SOL de Devnet
Para interactuar con Devnet, necesitas SOL de Devnet para pagar tarifas de transacción y alquiler de cuentas. Puedes obtener SOL de Devnet gratis desde el faucet oficial de Solana:
- Visita el Faucet de Solana.
- Ingresa la dirección de tu billetera (por ejemplo, una dirección de Phantom o Solflare).
- Haz clic en "Request SOL" y espera a que lleguen los tokens.
Las solicitudes al faucet tienen límites de tasa, así que si necesitas una gran cantidad, considera ejecutar un validador local o usar un faucet que admita solicitudes más grandes.
Haciendo tu primera llamada RPC
Aquí tienes un comando curl simple para verificar la altura de bloque actual en Devnet:
curl https://api.devnet.solana.com -X POST -H "Content-Type: application/json" -d '
{
"jsonrpc": "2.0",
"id": 1,
"method": "getBlockHeight",
"params": [{"commitment": "confirmed"}]
}
'
Deberías recibir una respuesta como:
{
"jsonrpc": "2.0",
"result": 123456789,
"id": 1
}
Usando suscripciones WebSocket
Para actualizaciones en tiempo real, puedes usar suscripciones WebSocket. Por ejemplo, para suscribirte a cambios de cuenta:
const webSocket = new WebSocket('wss://api.devnet.solana.com');
webSocket.onopen = () => {
webSocket.send(JSON.stringify({
jsonrpc: '2.0',
id: 1,
method: 'accountSubscribe',
params: [
'YOUR_ACCOUNT_ADDRESS',
{
commitment: 'confirmed',
encoding: 'base64'
}
]
}));
};
webSocket.onmessage = (event) => {
console.log(JSON.parse(event.data));
};
Métodos RPC comunes para Devnet
Aquí hay algunos métodos RPC de uso frecuente al trabajar con Devnet:
getBalance– Verifica el saldo de SOL de una cuenta.getLatestBlockhash– Obtiene el hash de bloque más reciente para firmar transacciones.sendTransaction– Envía una transacción firmada.getSignatureStatuses– Verifica el estado de una transacción.getProgramAccounts– Obtiene todas las cuentas propiedad de un programa.simulateTransaction– Simula una transacción sin confirmarla.
Depuración de problemas comunes
429 Too Many Requests
Si ves errores HTTP 429, estás alcanzando el límite de tasa. Soluciones:
- Reduce la frecuencia de solicitudes y agrega caché.
- Usa un proveedor de RPC dedicado con límites más altos.
- Ejecuta un validador local para desarrollo.
403 Forbidden
Esto puede ocurrir si tu IP está bloqueada debido a abuso. Intenta de nuevo más tarde o usa una red diferente.
Transacción no confirmada
Si las transacciones no se confirman, verifica:
- El nivel de compromiso que estás usando.
- Que el blockhash sea reciente.
- Que tengas suficiente SOL para las tarifas.
Cuándo usar un proveedor de RPC dedicado
Aunque el endpoint público de Devnet es suficiente para pruebas pequeñas, tiene limitaciones:
- Límites de tasa: La infraestructura compartida puede limitar tus solicitudes.
- Confiabilidad: Los endpoints públicos pueden caerse o volverse lentos.
- Sin soporte: Estás solo si algo falla.
Para desarrollo serio, considera un proveedor de RPC dedicado como OnFinality. Ofrecen RPC de Solana Devnet con límites de tasa más altos, mejor tiempo de actividad y soporte. También puedes consultar precios de RPC para encontrar un plan que se ajuste a tus necesidades.
Conclusiones clave
- La API de Solana Devnet proporciona un entorno de prueba público para construir y probar aplicaciones de Solana.
- Usa
https://api.devnet.solana.compara HTTP ywss://api.devnet.solana.compara WebSocket. - Obtén SOL de Devnet gratis desde el faucet oficial para pagar transacciones.
- Los endpoints públicos tienen límites de tasa; considera un proveedor dedicado para pruebas de nivel producción.
- Siempre prueba con el nivel de compromiso adecuado y optimiza tus llamadas RPC.
Preguntas frecuentes
¿Qué es la API de Solana Devnet?
La API de Solana Devnet es un conjunto de endpoints RPC para interactuar con el clúster de Solana Devnet, un entorno de prueba público para desarrolladores.
¿Cómo obtengo SOL de Devnet?
Usa el faucet oficial de Solana en faucet.solana.com para solicitar SOL de Devnet gratis.
¿Cuáles son los límites de tasa para el endpoint público de Devnet?
Los límites de tasa no están documentados públicamente y pueden cambiar. Si necesitas límites más altos, usa un proveedor de RPC dedicado.
¿Puedo usar Devnet para producción?
No, Devnet es solo para pruebas. Usa Mainnet para aplicaciones de producción.
¿Cómo me conecto a Devnet con WebSocket?
Usa wss://api.devnet.solana.com para conexiones WebSocket.
¿Cuál es la diferencia entre Devnet y Testnet?
Devnet es para pruebas de desarrolladores, mientras que Testnet es para probar actualizaciones de red y rendimiento de validadores bajo estrés.
¿Cómo elijo un proveedor de RPC para Devnet?
Busca proveedores que ofrezcan límites de tasa altos, tiempo de actividad confiable y soporte. Consulta cómo elegir un proveedor de RPC para obtener más orientación.
¿Cuáles son las mejores prácticas para usar la API de Devnet?
Almacena en caché las respuestas RPC, usa niveles de compromiso apropiados y evita hacer llamadas innecesarias. Para producción, usa infraestructura dedicada.
¿Cómo despliego un programa en Devnet?
Usa la CLI de Solana con solana program deploy después de configurar tu clúster en Devnet.
¿Qué herramientas puedo usar con la API de Devnet?
Puedes usar la CLI de Solana, web3.js y varios SDK. Para una lista completa de redes compatibles, consulta redes RPC compatibles.