OTOthoTools

Verificador de saúde RPC

Teste endpoints JSON-RPC pelo navegador
Resultado0 achados

    As requisições vão diretamente deste navegador ao endpoint

    Introdução

    O verificador de saúde RPC testa endpoints JSON-RPC de Ethereum (EVM), Solana e Cosmos (CometBFT) e informa latência, chain ID, altura, estado de sincronização e número de peers. É útil antes de apontar um aplicativo, um indexador ou uma carteira para um novo endpoint, e para comparar dois endpoints da mesma rede.

    Cada requisição parte diretamente do seu navegador para o endpoint. Não há proxy nem chamada no servidor: a ferramenta monta os payloads JSON-RPC localmente, mede o tempo de resposta e classifica o resultado. Se o endpoint bloquear o navegador via CORS, a ferramenta explica o motivo e mostra um comando curl equivalente para você executar.

    Objetivo

    • Validar a URL do endpoint e rejeitar esquemas inseguros (file:, javascript:, data:, ftp:).
    • Testar os métodos de saúde padrão de Ethereum, Solana ou Cosmos e medir a latência.
    • Classificar o endpoint como saudável, sincronizando, atrasado, indisponível ou inconclusivo.
    • Comparar opcionalmente dois endpoints da mesma rede quanto a diferença de altura, divergência de chain ID e diferenças de versão.
    • Nunca declarar um endpoint confiável apenas porque respondeu.

    Entradas

    • Uma ou duas URLs de endpoint (https:// preferido).
    • O tipo de chain: Ethereum (EVM), Solana ou Cosmos (CometBFT).
    • Nada é armazenado, registrado ou enviado ao servidor do OthoTools.

    Como funciona

    A URL é analisada e validada: apenas http(s) é aceito, https é preferido; userinfo ou parâmetros de query com aparência de token são detectados e mascarados antes da exibição. HTTP em um host público é rejeitado porque o navegador o bloqueia como mixed content.

    Para Ethereum, a ferramenta chama web3_clientVersion, eth_chainId, eth_blockNumber, eth_syncing e net_peerCount. Para Solana, getHealth, getSlot, getVersion e getIdentity. Para Cosmos, os endpoints REST /status e /net_info.

    Cada chamada é cronometrada. Os resultados são normalizados em um resultado (altura, chain ID, versão, peers, estado de sincronização, latência) e classificados: saudável quando o nó responde com altura atual e não está sincronizando; sincronizando quando relata progresso de recuperação; atrasado quando uma comparação mostra grande diferença de altura; indisponível quando a requisição falha ou retorna erro JSON-RPC; inconclusivo quando o formato da resposta é inesperado.

    Com dois endpoints, alturas, chain IDs, versões e latências são comparados e as diferenças são relatadas como achados.

    Exemplo testável

    Experimente — a análise roda localmente no seu navegador.

    Exemplo

    Chain:    Ethereum
    Endpoint: https://eth.example.com
    Método:   eth_blockNumber
    
    (segundo endpoint, comparação opcional)
    https://eth2.example.com

    Saída esperada

    web3_clientVersion  Geth/v1.14.11-stable/linux-arm64  ·  212 ms
    eth_chainId         1                                 ·  204 ms
    eth_blockNumber     21048321                          ·  198 ms
    eth_syncing         false                             ·  201 ms
    net_peerCount       48                                ·  215 ms
    Status: saudável — resposta em ~205 ms em média.

    Interpretando a saída

    • Um resultado saudável significa que o endpoint responde aos métodos padrão e não relata progresso de sincronização. Não prova que o nó é confiável, está bem configurado ou é seguro para envio de fundos.
    • Sincronizando significa que o nó está se recuperando; aplicações que precisam de estado recente verão dados desatualizados ou ausentes até ele terminar.
    • Uma diferença de altura entre dois endpoints da mesma rede é normal durante reorgs curtos; uma diferença grande ou persistente sugere um nó doente ou particionado.
    • Se o CORS bloquear a requisição, o endpoint não permite origens de navegador. Execute o comando curl equivalente em uma máquina de confiança para obter os mesmos dados.

    Riscos

    • Um endpoint que responde ainda pode servir dados desatualizados, errados ou maliciosos. Saúde não é confiança.
    • URLs podem conter credenciais. A ferramenta as mascara, mas remova-as da URL antes de compartilhar.
    • Endpoints públicos podem limitar ou bloquear testes repetidos; não use esta ferramenta como daemon de monitoramento.

    Limitações

    • As políticas de CORS do navegador podem bloquear endpoints públicos legítimos; o fallback de curl cobre esses casos.
    • A ferramenta verifica um instantâneo no tempo; não é monitoramento de uptime.
    • Não detecta problemas de consenso, manipulação de fee market ou má configuração além dos métodos testados.

    Referências oficiais

    FAQ

    É seguro colar uma URL RPC aqui?

    Sim — a requisição parte diretamente do seu navegador e nunca passa pelo servidor do OthoTools. Mesmo assim, a ferramenta mascara credenciais e parâmetros com aparência de token na tela e recomenda removê-los antes de compartilhar.

    Por que um endpoint público falha com CORS?

    O servidor do endpoint decide quais origens de navegador podem chamá-lo. Muitos RPCs públicos não enviam cabeçalhos CORS, então o navegador bloqueia a requisição mesmo com o endpoint ativo. Para esse caso, a ferramenta mostra um comando curl.

    O que significa 'atrasado'?

    Vem da comparação de dois endpoints: a diferença de altura entre eles excede o limite daquela chain (12 blocos para Ethereum, 150 slots para Solana, 10 blocos para Cosmos). Um teste de endpoint único não pode determinar 'atrasado' sem referência.