Ir al contenido

Datos de backlinks en JSON: $100 de crédito gratuito, sin tarjeta, inicio de sesión con Google.

SEOMasters.dev
SEOMasters.devRegistrarse

Comprueba mi backlink devolvió nada: una tabla de errores

Tu herramienta es tan estable como su gestión de errores. A continuación, los fallos que ocurren realmente, la causa exacta y si un reintento tiene sentido.

Cuatro tipos diferentes de candados industriales colgados de un estante que representa varios estados de error

La regla que cubre la mayoría de los casos

Reintenta los fallos de red. Nunca reintentes 401 ni 402. El primero se soluciona en segundos; el segundo requiere intervención humana, y presionar solo llena tus registros.

Cada respuesta JSON incluye un campo ok, y las autenticadas añaden _credits con el coste de la llamada y el saldo restante. Comprueba ok en el cuerpo incluso cuando el estado HTTP parezca correcto.

Los tiempos de reintento que se indican a continuación son nuestro consejo de ingeniería, no límites documentados. La documentación de la API que poseemos no publica un límite de velocidad, así que establece tu propio techo y manténlo moderado.

Por qué 401 y 402 nunca se reintentan

Un 401 es un problema de clave, y un 402 es un problema de saldo. Ninguno se resuelve entre dos intentos separados por un segundo, por lo que un reintento solo añade ruido a tus registros.

Esperar tampoco soluciona un 402. El saldo permanece donde está hasta que alguien lo recargue desde la página de la cuenta, por lo que la única reacción útil es un mensaje claro y una alerta a quien gestione el presupuesto.

Un 401 merece una revisión del encabezado o del parámetro key, y una comprobación de que la clave no haya sido reemplazada. Reintentar la misma clave incorrecta varias veces no demuestra nada.

Una clave incorrecta y un saldo vacío también se ven diferentes en tu panel. Ponlos en alertas separadas, para que quien recargue no se despierte por un error tipográfico en la clave, y quien rote las claves no sea notificado por un problema de saldo.

Fallos de red y retroceso

Un tiempo de espera o una reconexión pueden resolverse por sí solos, por lo que esos son los únicos casos que merecen otro intento. Espera 1, 2, 4 y luego 8 segundos, añade un poco de aleatoriedad y detente después del cuarto intento.

Esos tiempos son nuestro consejo, no un límite documentado. Mantén tu propio techo, registra cada reintento y alerta cuando los reintentos aumenten, porque una tasa de reintentos creciente suele ser la primera señal de un problema en el servicio upstream.

Mantén el tiempo de espera de tu lado explícito, en una constante con nombre. Un valor por defecto implícito que cambia con una actualización de la biblioteca es una razón común por la que un trabajo nocturno empieza a fallar solo en una máquina.

Observa también el tiempo de respuesta del servicio upstream junto con la tasa de fallos. Una respuesta lenta que nunca falla aún puede ocupar tus trabajadores, y un bucle de reintentos empeora esa lentitud.

Síntoma, causa, respuesta

SíntomaCausa¿Reintentar?Qué hacer
HTTP 401Clave faltante, mal escrita o revocadaNoComprueba el encabezado o el valor key=, luego la página de la cuenta
HTTP 402Se han agotado los créditosNoRecarga en USDT (TRC-20) desde la página de la cuenta; la misma clave reanuda
ok no es verdadero en HTTP 200Parámetro incorrecto, como una URL donde corresponde un dominioNoValida la entrada; envía example.com, no https://example.com/page
Tiempo de espera o reconexiónInterferencia de red o del servicio upstreamSí, de 3 a 4 vecesRetrocede 1, 2, 4, 8 segundos con aleatoriedad
Resultado vacío para un sitio nuevoAún no está en el índice; la actualización es mensualNoMuestra "no indexado aún" con la fecha del índice
El número difiere de otra herramientaDiferente índice y una fórmula DR distintaNoCompara tendencias dentro de una misma herramienta, consulta referencia DR
Las filas se detienen en 50.000Techo de paginaciónNoConsulta notas de paginación
El saldo baja más rápido de lo previstoAcción pagada en bucle, o una llamada de 3 créditos en una ruta crítican/dRegistra _credits, permite acciones
Consejo: prueba primero con cURL

Antes de culpar a tu código, pega la URL fallida en cURL con la misma clave. Si funciona allí, el error está en tu cliente. Si falla allí también, la respuesta está en la tabla. Esta comprobación ha resuelto más tickets que cualquier búsqueda en registros.

Una ejecución de depuración, en orden

  1. 1

    Reproduce con curl

    Toma la URL fallida de tu aplicación y ejecútala manualmente con la misma clave. Si curl funciona, tu código es el problema.

  2. 2

    Prueba una acción gratuita

    overview en el mismo dominio no requiere clave. Si responde, el índice está bien y el problema está en la autenticación o en el crédito.

  3. 3

    Lee el saldo

    Un 402 es inequívoco, pero una llamada pagada fallida después de un éxito gratuito suele apuntar a crédito o a un error tipográfico en la clave.

  4. 4

    Comprueba la entrada

    Minúsculas, sin esquema, sin ruta, sin punto final. La mayoría de los fallos de ok terminan aquí.

Manas lijando una rama rugosa hasta darle una forma suave en un banco de trabajo de madera

Normaliza el dominio antes de la llamada

La mayoría de las llamadas fallidas comienzan en la caja de entrada, no en la red. Los usuarios pegan lo que copiaron, y tu código debe convertir eso en un dominio limpio antes de que la API lo vea.

Elimina el esquema y la ruta

Elimina el esquema, cualquier ruta y la cadena de consulta. Una dirección de artículo pegada se convierte en su host, y solo el host va al servicio upstream.

Convierte el host a minúsculas también. Mantén la limpieza en una sola función, para que la misma regla se ejecute en el formulario, en el trabajo por lotes y en las pruebas.

Prueba la limpieza con cinco o seis entradas reales pegadas, incluyendo una con una barra final y otra con una cadena de consulta. Esos casos revelan errores que un ejemplo limpio nunca muestra.

Decide una vez qué hacer con www.

Elige una regla para www. y aplícala en una sola función, para que el mismo sitio nunca se busque con dos grafías.

Escribe la regla junto a la función. El siguiente desarrollador que encuentre un www perdido encontrará entonces la decisión, no una segunda opinión.

Cualquiera que sea la regla que elijas, mantenla en un solo archivo y escribe una prueba para ella. La prueba es el registro de la decisión, y es breve.

Rechaza lo que no puede ser un dominio

Rechaza entradas con espacios o etiquetas vacías, y muestra un mensaje corto en el formulario. Una cadena rechazada no cuesta nada, mientras que una incorrecta cuesta una llamada fallida y un usuario confundido.

Los puntos finales son el caso extraño. Elimina uno al final del host y trata cualquier otro como inválido.

Muestra el rechazo junto al campo, no como una notificación que desaparece. Un usuario que puede ver qué estaba mal lo corrige en un solo intento.

Qué mostrarle al usuario

Nunca imprimas un error crudo del servicio upstream en la interfaz. Mapea 401 y 402 a un "servicio no disponible" genérico y envía el detalle a tu propio registro y a una alerta. Los visitantes no pueden arreglar tu saldo, y el mensaje hace que tu herramienta parezca rota.

Un pequeño brote de planta emergiendo de tierra seca con la mano de un jardinero cerca

Resultados vacíos y la antigüedad del índice

Cuando alguien escribe comprueba mi backlink en tu formulario y no obtiene nada, una respuesta vacía no siempre es un error. A menudo significa que el dominio es nuevo, demasiado pequeño o simplemente no está en el índice aún, y la pantalla debería decir cuál.

Un sitio recién lanzado

Un sitio lanzado la semana pasada puede no tener dominios de referencia en el índice. Muestra "no indexado aún" junto con la fecha del índice, y ofrece la llamada gratuita overview como una comprobación cruzada.

No almacenes en caché esa respuesta vacía por mucho tiempo. Unas pocas horas son suficientes, y la próxima reconstrucción puede incluir el sitio.

Dile al visitante cuándo se reconstruyó el índice por última vez, en palabras claras. Una fecha junto a una respuesta vacía explica la brecha mejor que un mensaje más largo.

Una nota de una línea en tu propia interfaz es suficiente aquí. Nadie espera un índice en tiempo real, y una frase sencilla junto a la fecha del índice se lee como honesta.

Un número que no coincide con otra herramienta

Los rastreadores diferentes ven diferentes partes de la web. Lee la figura DR como una posición dentro de una herramienta, y señala a los lectores a la referencia DR para la fórmula.

Una nota corta debajo de la figura ahorra más tiempo de soporte que cualquier cantidad de disculpas posteriores.

Si dos lecturas difieren, compara primero los conteos de dominios de referencia. La fórmula DR es simple, por lo que la mayoría de las discrepancias se reducen al conteo.

Filas que se detienen en 50.000

Cuando una lista se detiene en el techo, la respuesta es correcta para lo que permite la API. Etiqueta el corte y enlaza las notas de paginación en lugar de intentar una página más profunda.

Las páginas más profundas más allá de ese punto no son un reintento. Son una consulta diferente, y tratarlas como una es cómo un bucle se ejecuta durante horas.

Mantén el corte visible en la exportación también, para que una hoja de cálculo abierta un mes después aún muestre que la lista estaba limitada.

Mostrar el conteo de filas junto a la tabla convierte un corte en un hecho visible. Un lector que vea 50.000 filas sabrá pedir una pregunta más específica.

Antes de que el código de reintento se lance

  • 401 y 402 nunca se reintentan
  • Los tiempos de espera se reintentan con retroceso y un número fijo de intentos
  • Cada respuesta se verifica por ok, independientemente del estado HTTP
  • La entrada se normaliza antes de la llamada, no después de que falle
  • Los errores upstream van a tu propio registro, y los visitantes ven un mensaje genérico
  • Un resultado vacío muestra la fecha del índice en lugar de una pantalla en blanco

Preguntas relacionadas

¿Pueden mis usuarios escribir cualquier URL en la caja?
Permíteselo, luego normalízalo tú mismo. Elimina el esquema, la ruta, la cadena de consulta y www. si eliges hacerlo, convierte el host a minúsculas, y solo entonces llama a la API. El servicio upstream espera un dominio limpio, por lo que una entrada sucia es la causa más común de una llamada fallida.
¿Debería almacenar en caché los fallos?
Almacena en caché un resultado vacío "no indexado" durante unas pocas horas, porque el índice solo cambia mensualmente. Nunca almacenes en caché un 401 o 402 por mucho tiempo. Esos se resuelven en el momento en que se arregla la clave o el saldo, y un error en caché ocultaría la solución.
¿Las acciones gratuitas cuentan contra algo?
No cuestan créditos. Las cuatro gratuitas son domain, overview, stats y suggest. Aún así almacénalas en caché, ya que ser educado no cuesta nada y mantiene tu propia latencia baja.