Guía

Cómo usar GraphQL Formatter y entender sus resultados

GraphQL Formatter acepta texto de consultas o esquemas GraphQL, pero la implementación revisada solo completa correctamente las entradas vacías o con espacios. Las entradas con contenido fallan antes de devolver texto formateado.

Herramienta Formateador GraphQL

Qué puedes esperar de GraphQL Formatter

GraphQL Formatter está pensado para recibir texto de una consulta o un esquema GraphQL. En la implementación revisada, una entrada vacía o formada solo por espacios termina correctamente con un resultado de texto vacío; una entrada con contenido no llega a devolver texto formateado. Por eso, esta guía sirve para entender qué entrada acepta la herramienta, qué controles puedes preparar y cómo interpretar el resultado, no para presentar el formateado como una operación disponible para consultas con contenido.

La herramienta distingue entre texto y otros tipos de valor. También aplica reglas diferentes a los modos y a la sangría cuando una entrada no vacía alcanza esa fase. Estas reglas ayudan a anticipar el comportamiento, pero no cambian el hecho de que las solicitudes ordinarias con contenido fallan durante el procesamiento.

Pasos para probar la herramienta

  1. Prepara el contenido como texto. Puede ser una consulta o un esquema GraphQL. No introduzcas objetos, listas ni otros valores que no sean cadenas, porque una entrada que no sea de texto falla en lugar de producir un resultado.

  2. Si quieres comprobar el comportamiento de la entrada vacía, deja el campo sin contenido o escribe únicamente espacios en blanco. Esa solicitud sí se completa y devuelve texto formateado vacío. En este caso, los valores de modo y sangría se conservan tal como se suministran, sin aplicar las conversiones habituales.

  3. Para una entrada con contenido, elige el modo si el control está disponible. minify selecciona la ruta de minificación; cualquier otro valor sigue la ruta de embellecimiento. En esa fase, el modo se pasa a minúsculas. La sangría usa 2 espacios por nivel de forma predeterminada. Los valores convertibles entre 0 y 8 se aceptan; los valores negativos, superiores a 8 o no convertibles vuelven a 2.

  4. Mantén el contenido dentro de 1.000.000 de bytes en su codificación UTF-8. Si supera ese tamaño, la solicitud falla en lugar de formatearse. Recuerda que este límite se mide en bytes, no necesariamente en número de caracteres.

  5. Envía la solicitud y revisa si termina con texto formateado o con un fallo. No tomes una respuesta vacía como una consulta formateada: para una entrada en blanco significa que no se devolvió contenido. Para una entrada GraphQL ordinaria, la implementación revisada falla antes de devolver texto, tanto en la ruta de embellecimiento como en la de minificación.

Cómo interpretar el resultado y sus límites

El resultado vacío solo confirma que se aceptó una entrada en blanco y que no había texto que devolver. No confirma que GraphQL Formatter haya analizado, validado, ejecutado o comprobado la corrección de una consulta. Tampoco debes interpretar un fallo de una entrada con contenido como un error de sintaxis de GraphQL: el comportamiento revisado indica que el procesamiento falla antes de entregar el texto formateado.

El modo minify está asociado a una ruta que intentaría quitar texto parecido a comentarios con almohadilla, reducir espacios y eliminar espacios alrededor de ciertas llaves, paréntesis, dos puntos y comas. No elimina los espacios que rodean los corchetes. Además, esa ruta falla antes de devolver un resultado para una entrada ordinaria no vacía. Por ello, no presentes la minificación como una transformación conseguida ni supongas que conservaría todos los comentarios o el espaciado original.

En términos prácticos, usa la herramienta para comprobar el contrato de entrada vacía y sus condiciones de rechazo. Si necesitas obtener una consulta embellecida o minificada a partir de texto GraphQL, esta implementación no proporciona ese resultado para entradas con contenido.

Ejemplo práctico

Quieres comprobar el comportamiento básico del formulario antes de pegar una consulta GraphQL y envías una entrada formada únicamente por espacios.

Deja el campo de entrada vacío y conserva los controles de modo y sangría en los valores que quieras probar; después envía la solicitud y revisa el texto devuelto.

La solicitud termina con texto formateado vacío. Ese resultado indica que se envió una entrada vacía o compuesta solo por espacios, no que se haya formateado una consulta.

Limitaciones

  • La implementación revisada no devuelve texto formateado para entradas ordinarias con contenido. La ruta de minificación también prevé cambios de comentarios y espacios, por lo que no debe asumirse la conservación del texto original.

Errores frecuentes

  • Confundir el resultado vacío con un formateado correcto. Si se envían espacios en blanco, la solicitud termina con texto vacío; si se envía una consulta con contenido, falla antes de devolver texto. Comprueba primero qué entrada se ha enviado y no uses el resultado vacío como prueba de que GraphQL Formatter ha procesado una consulta.

Preguntas frecuentes

¿GraphQL Formatter formatea una consulta GraphQL con contenido?

Con una entrada vacía o compuesta solo por espacios, la herramienta devuelve texto formateado vacío. Con una consulta o un esquema que contenga texto, la implementación falla antes de devolver un resultado formateado.

¿Qué modo debo elegir para minificar GraphQL?

El modo minify selecciona la ruta de minificación; cualquier otro valor sigue la ruta de embellecimiento. Aun así, las entradas no vacías fallan durante el procesamiento y no devuelven texto formateado.

¿Qué tamaño y tipo de entrada admite?

Si la entrada tiene contenido, el límite es de 1.000.000 de bytes en UTF-8; por encima de esa cifra la solicitud falla. Una entrada que no sea de texto también falla después de seleccionar el valor de entrada.

Herramienta

Formateador GraphQL