Logo
Nuevos usuarios de RPC: 35% de descuento el primer mesVer oferta
RPC Assistant

¿Qué proveedores de RPC de Solana incluyen API mejoradas para datos de NFT?

Resumen

Los nodos JSON-RPC estándar de Solana exponen métodos principales como getAccountInfo y getProgramAccounts, pero no devuelven metadatos de NFT decodificados, agrupaciones de colecciones ni el estado de NFT comprimidos (cNFT). Los proveedores que incluyen API mejoradas añaden endpoints indexados y conscientes de NFT sobre el nodo sin procesar, para que puedas consultar activos, colecciones y metadatos de tokens sin escribir tu propio indexador DAS. OnFinality ofrece RPC de Solana e infraestructura de nodo dedicado con transportes HTTP y WebSocket, y puedes combinarlo con una capa de indexación para lecturas específicas de NFT.

Recomendación rápida

Si tu aplicación necesita metadatos de NFT decodificados, pertenencia a colecciones o el estado de NFT comprimidos (cNFT), un nodo JSON-RPC de Solana simple no te lo dará. Necesitas un proveedor que superponga una API indexada y consciente de NFT sobre el nodo. En la práctica, eso significa una de dos configuraciones:

  • Un proveedor con una API mejorada de NFT integrada (a menudo un endpoint de Digital Asset Standard, o DAS) que devuelve activos, colecciones y metadatos en una sola llamada.
  • Un proveedor de RPC de Solana sin procesar más tu propio indexador, donde ejecutas el nodo y un servicio de indexación separado que lee el estado en cadena y sirve consultas de NFT.

OnFinality proporciona RPC de Solana e infraestructura de nodo dedicado sobre HTTP y WebSocket, que es la capa de nodo de la que dependen ambas configuraciones. Si quieres lecturas conscientes de NFT sin operar un indexador, confirma la superficie de API mejorada del proveedor antes de comprometerte. Si quieres control total sobre cómo se estructuran los datos de NFT, ejecuta el nodo a través de un proveedor como OnFinality y añade tu propia capa de indexación.

Por qué el RPC estándar de Solana se queda corto para datos de NFT

El JSON-RPC base de Solana está orientado a cuentas, no a activos. Un nodo puede decirte los bytes sin procesar almacenados en una cuenta, pero no sabe que una cuenta en particular es un NFT, a qué colección pertenece o qué dicen sus metadatos fuera de la cadena. Ese trabajo de decodificación es tarea de un indexador.

Esto importa porque la mayoría de las lecturas de NFT no son búsquedas de una sola cuenta. Son consultas como "todos los NFT que posee esta billetera", "cada elemento de esta colección" o "el estado actual de este árbol de NFT comprimidos". Responder esas consultas desde RPC sin procesar significa escanear muchas cuentas y analizar metadatos tú mismo, lo cual es lento y costoso a escala.

Las API mejoradas de NFT existen para cerrar esa brecha. Mantienen un índice de activos y exponen métodos que devuelven resultados estructurados, para que tu cliente no tenga que reconstruir el estado de los NFT a partir de cuentas sin procesar.

Qué significa realmente "API mejorada para datos de NFT"

La frase abarca varias cosas diferentes, y los proveedores la usan de forma flexible. Al evaluar un proveedor, separa estas capas:

CapaQué devuelveForma típica del método
RPC de nodo sin procesarBytes de cuenta, saldos, slotsgetAccountInfo, getProgramAccounts
RPC de token/metadatosCuentas de token SPL y metadatos de MetaplexgetTokenAccountsByOwner, lecturas de cuentas de metadatos
API de activos mejorada (estilo DAS)Activos decodificados, colecciones, propiedad, cNFTgetAssetsByOwner, getAsset, getAssetsByGroup
Indexador personalizadoEl esquema que definasTu propio endpoint HTTP/GraphQL

La capa estilo DAS es lo que la mayoría de los desarrolladores entiende por "API mejorada de NFT". Es un servicio indexado, no un método de nodo, por lo que puede estar en el mismo proveedor o en uno separado.

Matriz de evaluación de proveedores para cargas de trabajo de NFT

Usa esto para comparar proveedores en las dimensiones que realmente afectan las lecturas de NFT. Asigna tus propios pesos a cada fila según cuántos datos de NFT sirva tu aplicación.

Área de evaluaciónQué confirmarPor qué importa para datos de NFT
API mejorada/DASSi se ofrece una API de activos indexada y qué métodosDetermina si puedes consultar activos sin tu propio indexador
Soporte de cNFTSi los NFT comprimidos están indexadosEl RPC estándar no puede enumerar cNFT de forma eficiente
Acceso a nodo sin procesarDisponibilidad de HTTP y WebSocketNecesario para escrituras, suscripciones y lecturas de respaldo
TransporteHTTP, WebSocket y cualquier opción estilo gRPCLas suscripciones y los mints en tiempo real necesitan WebSocket
Capacidad dedicadaSi puedes obtener un nodo dedicadoAísla los escaneos pesados de getProgramAccounts del tráfico compartido
Frescura de datosCon qué frecuencia se actualiza el índiceLos índices obsoletos devuelven propiedad incorrecta tras transferencias
Conmutación por errorCómo cambias de endpoint si uno se degradaLos mercados de NFT no pueden permitirse fallos silenciosos de lectura

OnFinality se sitúa en las filas de nodo sin procesar y capacidad dedicada: proporciona RPC de Solana sobre HTTP y WebSocket, y nodos dedicados para cargas de trabajo que necesitan capacidad aislada. Para la capa de activos mejorada, confirma el servicio de indexación que planeas usar y cómo se conecta a tu nodo.

Conexión al RPC de Solana

Cualquier capa mejorada que elijas, en última instancia lee de un nodo de Solana. OnFinality expone un endpoint HTTP público y un endpoint WebSocket correspondiente para la mainnet de Solana:

# HTTP JSON-RPC
curl https://solana.api.onfinality.io/public \
  -X POST -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"getHealth"}'
// WebSocket subscription for account changes (e.g. a mint or metadata account)
import WebSocket from "ws";

const ws = new WebSocket("wss://solana.api.onfinality.io/public-ws");

ws.on("open", () => {
  ws.send(JSON.stringify({
    jsonrpc: "2.0",
    id: 1,
    method: "accountSubscribe",
    params: [
      "<METADATA_ACCOUNT_PUBKEY>",
      { encoding: "jsonParsed", commitment: "confirmed" }
    ]
  }));
});

ws.on("message", (data) => {
  console.log("account update:", data.toString());
});

Para producción, apunta tu aplicación a un endpoint dedicado o gestionado en lugar del público. Consulta RPC de Solana para los detalles actuales del endpoint y Precios de RPC para opciones de capacidad.

Leer datos de NFT sin una API mejorada

Si decides ejecutar tu propio indexador, el nodo sigue haciendo el trabajo pesado. Un patrón común es obtener las cuentas de token de una billetera y luego resolver la cuenta de metadatos de cada mint:

// 1. Get token accounts owned by a wallet
const owner = "<WALLET_PUBKEY>";
const res = await fetch("https://solana.api.onfinality.io/public", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: 1,
    method: "getTokenAccountsByOwner",
    params: [owner, { programId: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" }, { encoding: "jsonParsed" }]
  })
});
const { result } = await res.json();
console.log(result.value.length, "token accounts");

A partir de ahí, derivas la PDA de metadatos de Metaplex para cada mint y la lees, o pasas la lista de mints a tu indexador. Esto es más trabajo que llamar a getAssetsByOwner, pero te mantiene independiente de la API mejorada de cualquier proveedor único.

Cuándo usar una API mejorada frente a tu propio indexador

No hay una respuesta universalmente correcta. La disyuntiva es control frente a carga operativa.

  • Elige la API mejorada de NFT de un proveedor cuando quieras rapidez de comercialización, tus consultas encajen en el conjunto de métodos del proveedor y te sientas cómodo dependiendo de la frescura y el esquema de su índice.
  • Ejecuta tu propio indexador en un nodo gestionado cuando necesites campos de NFT personalizados, uniones entre programas o un esquema que tu producto controle, y puedas absorber el trabajo de indexación y relleno.
  • Usa ambos cuando quieras la API mejorada para lecturas comunes y tu propio índice para consultas específicas del producto, con el nodo como fuente compartida de verdad.

Una configuración híbrida es común en mercados: API mejorada para descubrimiento y búsqueda, índice propio para clasificación, precios y analítica.

Lista de verificación de preparación para producción

Antes de enrutar tráfico de NFT a cualquier proveedor, confirma estos puntos:

  1. Aislamiento de endpoints. Los escaneos pesados de getProgramAccounts o metadatos no deben compartir capacidad con lecturas sensibles a la latencia. Considera un nodo dedicado.
  2. Cobertura de transporte. Tienes endpoints HTTP y WebSocket, y tu cliente maneja reconexiones.
  3. Expectativas de frescura del índice. Sabes con qué rapidez aparecen los cambios de propiedad en la API mejorada tras una transferencia o un mint.
  4. Ruta de conmutación por error. Puedes cambiar a un segundo endpoint o proveedor sin volver a desplegar.
  5. Niveles de compromiso. Entiendes cómo processed, confirmed y finalized afectan el estado de NFT que ves.
  6. Comportamiento de tasa y ráfagas. Sabes cómo maneja tu proveedor los picos de tráfico durante mints o drops.
  7. Observabilidad. Registras latencia de solicitudes, tasas de error y retraso del índice para detectar degradación a tiempo.

Modos de fallo comunes con datos de NFT en Solana

  • Propiedad obsoleta. El índice mejorado no se ha puesto al día con una transferencia reciente, por lo que la aplicación muestra el propietario incorrecto. Mitígalo leyendo el estado final para acciones críticas de propiedad.
  • Vacíos en la enumeración de cNFT. Los NFT comprimidos no siempre están indexados por todos los proveedores. Confirma explícitamente el soporte de cNFT si tu aplicación los usa.
  • Fallos en la obtención de metadatos. Las URI de metadatos fuera de la cadena pueden ser lentas o no estar disponibles; cachea agresivamente y maneja tiempos de espera.
  • Sobrecarga de getProgramAccounts. Los escaneos amplios contra endpoints compartidos pueden ser lentos o limitados. Acota los filtros con precisión o pásate a un nodo dedicado.
  • Deriva de esquema. Las formas de respuesta de la API mejorada pueden cambiar entre versiones. Fija tu cliente a una versión conocida y prueba las actualizaciones.

Puntos clave

  • El RPC estándar de Solana no devuelve datos de NFT decodificados; las API mejoradas son servicios indexados superpuestos a un nodo.
  • "API mejorada" normalmente significa una API de activos estilo DAS con métodos como getAssetsByOwner y getAssetsByGroup.
  • Puedes obtener datos de NFT ya sea desde la API mejorada de un proveedor o ejecutando tu propio indexador contra un nodo sin procesar.
  • OnFinality proporciona RPC de Solana sobre HTTP y WebSocket, además de nodos dedicados, que es la capa de nodo que ambos enfoques necesitan.
  • Evalúa proveedores por cobertura de API mejorada, soporte de cNFT, transporte, capacidad dedicada, frescura del índice y conmutación por error.
  • Confirma la frescura del índice y el soporte de cNFT antes de comprometerte, y mantén un endpoint de conmutación por error listo.

Preguntas frecuentes

¿OnFinality incluye una API mejorada de NFT? OnFinality proporciona RPC de Solana e infraestructura de nodo dedicado sobre HTTP y WebSocket. Para lecturas mejoradas específicas de NFT, confirma la capa de indexación que planeas usar y cómo se conecta a tu nodo. Consulta RPC de Solana para detalles del endpoint.

¿Puedo obtener metadatos de NFT desde un nodo RPC estándar de Solana? Puedes leer cuentas de token y metadatos sin procesar, pero debes decodificarlas e indexarlas tú mismo. Un nodo estándar no devuelve datos estructurados de activos o colecciones.

¿Qué es una API DAS? Digital Asset Standard (DAS) es una interfaz común para consultar activos indexados de Solana, incluidos NFT y NFT comprimidos, con métodos como getAsset y getAssetsByOwner.

¿Necesito un nodo dedicado para cargas de trabajo de NFT? No siempre, pero los escaneos pesados de metadatos o las consultas getProgramAccounts se benefician de capacidad aislada para no afectar otro tráfico. Consulta nodos dedicados.

¿Cómo cambio de proveedor sin romper mi aplicación? Mantén la configuración de endpoints externa, admite múltiples endpoints y prueba la conmutación por error. Una breve lista de verificación para seleccionar proveedor te ayuda a comparar opciones antes de migrar.

¿Dónde puedo ver qué redes admite OnFinality? Explora las redes RPC compatibles y consulta Precios de RPC para detalles de capacidad y planes.

Base de conocimiento RPC

Detalles RPC relacionados

RPC de redSolana

API WebSocket de Solana: Cómo transmitir datos en tiempo real desde la cadena

La API WebSocket de Solana permite suscribirse a actualizaciones en tiempo real, como cambios de cuentas, confirmaciones de transacciones y nuevos slo...

RPC de redKlaytn

Staking de KLAY en Klaytn: qué deben verificar los desarrolladores antes de hacer staking

Klaytn (ahora rebautizado como Kaia) utiliza un modelo de prueba de participación delegada en el que los tenedores de KLAY pueden hacer staking a trav...

RPC de redOptimism

How do I connect to Optimism RPC and what should I consider when choosing an endpoint?

Optimism RPC endpoints allow applications to read and write data on OP Mainnet and OP Sepolia. This article covers network settings, JSON-RPC methods,...

RPC de redEfinity

¿Qué características de acceso a nodos dedicados deben buscar los desarrolladores de Solana?

Los nodos RPC dedicados de Solana brindan a tu dApp acceso exclusivo a una única instancia de nodo, evitando los efectos de vecino ruidoso de los endp...

Selección de proveedor RPCSolana

Proveedores de RPC de Solana con soporte empresarial: qué evaluar

Elegir un proveedor de RPC de Solana para cargas de trabajo de producción requiere evaluar más que el rendimiento bruto. El soporte empresarial signif...

RPC de redTON

RPC TON Network: Endpoints, Provider Comparison, and Troubleshooting

Looking for an RPC TON network endpoint? This guide compares TON RPC providers, provides step-by-step setup instructions, and highlights common pitfal...

Nunca te preocupes por la infraestructura nuevamente

OnFinality elimina la carga pesada de DevOps para que puedas construir de forma más inteligente y rápida.

Comenzar