El SuiClient: el empleado de correos de tu app
- Audiencia: Desarrolladores nuevos en la blockchain Sui.
- Requisitos previos: Comprensión básica de los conceptos de blockchain (billeteras, transacciones).
- Objetivo: Entender el papel del
SuiClienten la arquitectura de la aplicación.
Introducción
En el ecosistema Sui, tu aplicación no puede comunicarse directamente con la red blockchain. Necesita un intermediario que se encargue de los protocolos de comunicación, la obtención de datos y el envío de transacciones.
El SuiClient es la interfaz principal en el SDK de TypeScript de Sui para este propósito.
La arquitectura: La analogía de la "oficina de correos"
Piensa en la red Sui como un sistema postal masivo y global.
- Tu aplicación es un cliente en el mostrador.
- El
SuiClientes el empleado de correos.
Confías en el empleado para interactuar con el sistema. No puedes clasificar el correo ni conducir los camiones de reparto por ti mismo; debes hacer las solicitudes a través del empleado.
- Imagen
- Código
- ASCII
flowchart LR
A["Tu aplicación<br/>(Cliente)"] -->|Solicita servicio| B("SuiClient<br/>(Empleado)")
B -->|Procesa solicitud| C["Nodo de red Sui<br/>(Sistema postal)"]
C -->|Entrega resultado| B
B -->|Entrega elemento| A
┌──────────────┐ Solicita servicio ┌──────────────┐ Procesa solicitud ┌──────────────────┐
│Tu aplicación │─────────────────► │ SuiClient │─────────────────► │ Nodo de red Sui │
│ (Cliente) │◄───────────────── │ (Empleado) │◄───────────────── │ (Sistema postal) │
└──────────────┘ Entrega elemento └──────────────┘ Entrega resultado └──────────────────┘
Conexión a la red
Al igual que un empleado trabaja en una sucursal específica, una instancia de SuiClient se conecta a un entorno de red específico a través de un extremo de llamada a procedimiento remoto (RPC).
Cuando inicializas el cliente, defines a qué entorno se dirige:
| Red | Descripción | Caso de uso |
|---|---|---|
| Mainnet | La red de producción en vivo. Activos reales, valor real. | Aplicaciones de producción. |
| Testnet | Red de pruebas pública. Refleja las versiones de Mainnet. | Pruebas de integración y staging. |
| Devnet | Red experimental. Se reinicia con frecuencia. | Creación rápida de prototipos y pruebas públicas. |
| Localnet | Red de pruebas local que se ejecuta en tu ordenador. | Desarrollo y pruebas sin conexión. |
Capacidades principales
El SuiClient maneja dos categorías distintas de operaciones. Comprender la diferencia es fundamental para el diseño de aplicaciones.
1. Operaciones de lectura (consultas)
Estas son solicitudes para consultar datos existentes en el libro mayor.
- Coste: Gratuito (sin tarifas de gas).
- Seguridad: No se requiere firma de billetera.
- Mecanismo: El cliente consulta la base de datos local del nodo y devuelve el resultado inmediatamente.
- Ejemplos:
getObject(): Obtención de metadatos de NFT.getBalance(): Comprobación de los fondos de una billetera.
2. Operaciones de escritura (transacciones)
Estas son solicitudes para cambiar el estado del libro mayor.
- Coste: Requiere tokens SUI (medidos en MIST) para las tarifas de gas.
- Seguridad: Requiere una firma criptográfica de la billetera del usuario.
- Mecanismo: El cliente envía la transacción firmada a través del nodo completo RPC, que la retransmite a la red de validadores para su ejecución y consenso.
- Ejemplos:
- Transferir monedas.
- Acuñar NFTs.
- Modificar datos de juegos en la cadena.
Próximos pasos
Ahora que ya conoces la arquitectura, el siguiente paso es realizar una operación de lectura. La siguiente guía, Cómo obtener datos de objetos, proporciona un script para consultar datos en tiempo real desde la devnet de Sui.