Compresseur GraphQL
Compressez gratuitement le schéma GraphQL et interrogez des documents en ligne en supprimant les commentaires, les lignes vides et les espaces. Notre compresseur GraphQL gère correctement les descriptions de chaînes de blocs et prend en charge un mode de réduction sur une seule ligne pour générer des ID de requête persistants. Affiche les économies de taille de fil et la réduction du nombre de lignes. Tout le traitement s'effectue dans votre navigateur : votre schéma ne quitte jamais votre appareil. Aucune inscription requise.
Compression Options
Pourquoi utiliser notre compresseur GraphQL ?
- Compression GraphQL instantanée : compressez n'importe quel schéma ou document de requête GraphQL en millisecondes. Notre compresseur GraphQL traite tout localement dans votre navigateur : pas d'attente de téléchargement, pas d'aller-retour sur le serveur, aucune latence.
- Sécurisez GraphQL Compressor en ligne : votre schéma et vos requêtes GraphQL ne quittent jamais votre appareil lorsque vous les compressez. Un traitement 100 % côté client signifie une confidentialité totale : pas de stockage dans le cloud, pas de journaux de serveur, pas d'exposition des données.
- GraphQL Compressor Online - Aucune installation : compressez GraphQL directement dans votre navigateur. Aucun téléchargement de logiciel, aucun plugin, aucun compte requis. Fonctionne sur n'importe quel navigateur moderne sur n'importe quel système d'exploitation.
- Mode monoligne pour les requêtes persistantes : activez « Réduire en une seule ligne » pour produire la chaîne GraphQL la plus compacte possible – idéale pour générer des ID de requête persistants, intégrer des requêtes dans les paramètres HTTP GET et réduire la taille des virements électroniques.
Cas d'utilisation courants du compresseur GraphQL
- Génération de requêtes persistantes : compressez les requêtes GraphQL sur une seule ligne avant de les hacher pour les ID de requête persistants. Apollo Client, Relay et d'autres clients GraphQL utilisent la chaîne de requête compressée comme entrée du hachage SHA-256 pour les requêtes persistantes automatiques (APQ).
- API Wire-Size Reduction : compressez les documents de requête GraphQL avant de les envoyer dans des corps de requête HTTP ou des paramètres GET. La suppression des espaces et des commentaires d'une requête GraphQL typique peut réduire la taille de la charge utile de 30 à 60 %, améliorant ainsi les temps de réponse de l'API.
- Optimisation du registre de schémas : compressez les schémas GraphQL SDL avant de les télécharger vers des registres de schémas comme Apollo Studio, Hasura ou des magasins de schémas personnalisés. Des fichiers de schéma plus petits réduisent les coûts de stockage et accélèrent les pipelines de validation des schémas.
- Compression du stockage des requêtes : compressez les requêtes GraphQL avant de les stocker dans des bases de données, des caches Redis ou des fichiers de configuration. La suppression des commentaires et des espaces réduit la taille du stockage et accélère la récupération des requêtes sur les serveurs GraphQL à haut débit.
- Prétraitement de la génération de code : compressez les fichiers de schéma GraphQL avant de les insérer dans des outils de génération de code tels que GraphQL Code Generator, Pothos ou TypeGraphQL. Des fichiers d'entrée plus petits accélèrent la génération de code et réduisent la taille des artefacts intermédiaires.
- Schémas dépourvus de documentation : créez des versions dépourvues de documentation des schémas GraphQL SDL pour les versions internes où les descriptions d'introspection ne sont pas nécessaires. Supprimez les descriptions de chaînes de blocs (""") pour produire un schéma minimal à utiliser au moment de l'exécution.
Qu’est-ce que la compression GraphQL ?
La compression GraphQL est le processus de réduction de la taille en octets d'un document GraphQL - qu'il s'agisse d'un fichier SDL (Schema Definition Language) ou d'un document de requête/mutation/abonnement - en supprimant le contenu qui n'est pas requis pour l'analyse ou l'exécution. Cela inclut les # commentaires, les lignes vides, les espaces de fin et éventuellement les descriptions de chaînes de bloc ("""..."""). Notre compresseur GraphQL utilise un tokenizer qui identifie correctement les chaînes de bloc et les chaînes régulières, garantissant que leur contenu n'est jamais modifié. Le mode « Réduire en une seule ligne » produit la sortie la plus compacte possible : le format standard utilisé pour les requêtes persistantes automatiques (APQ) dans Apollo Client et Relay.
Comment fonctionne notre compresseur GraphQL
- 1 Collez ou téléchargez votre GraphQL : saisissez n'importe quel schéma ou document de requête GraphQL SDL dans le panneau de saisie, ou téléchargez un fichier.graphql,.gql ou.graphqls. Configurez les éléments à supprimer à l’aide des bascules d’option.
- 2 Compression instantanée basée sur un navigateur : cliquez sur "Compresser GraphQL". Le document est tokenisé pour identifier les chaînes, les chaînes de bloc et les commentaires. Chaque passe activée s'exécute ensuite localement dans votre navigateur sans qu'aucune donnée ne soit envoyée à un serveur.
- 3 Copiez ou téléchargez le GraphQL compressé : copiez la sortie dans le presse-papiers ou téléchargez-la sous forme de fichier.graphql. La sortie est un GraphQL valide que tout analyseur GraphQL peut traiter directement.
Ce qui est supprimé
- Commentaires (#) : toutes les # lignes de commentaires sont supprimées. GraphQL utilise # pour les commentaires de ligne - ils ne sont jamais requis pour l'exécution d'un schéma ou d'une requête.
- Lignes vides : les lignes vides et les lignes contenant uniquement des espaces entre les définitions sont supprimées. Ceux-ci sont courants dans les schémas SDL et les documents de requête bien formatés.
- Descriptions de chaînes de blocs ("""...""") : lorsque "Supprimer les descriptions" est activé, les descriptions de chaînes de blocs utilisées pour la documentation SDL sont supprimées. Désactivez cette option lorsque le schéma est utilisé pour l'introspection ou la génération de documentation.
- Normalisation des espaces : plusieurs espaces consécutifs sont réduits en un seul espace et les espaces autour de la ponctuation GraphQL (accolades, deux-points, barres) sont normalisés. En mode ligne unique, tous les espaces sont réduits au minimum requis.
Requêtes persistantes et mode ligne unique
Les requêtes persistantes automatiques (APQ) fonctionnent en envoyant un hachage SHA-256 de la chaîne de requête au lieu de la requête complète sur les requêtes suivantes. Le hachage doit être calculé à partir exactement de la même chaîne que celle mise en cache par le serveur. L'approche standard consiste à compresser la requête sur une seule ligne (en supprimant tous les espaces inutiles) avant le hachage. Activez « Réduire en une seule ligne » pour produire le format canonique sur une seule ligne utilisé par la normalisation print(parse(query)) du client Apollo. Cela garantit que votre client et votre serveur calculent des hachages identiques pour la même requête logique.
Foire aux questions
Un compresseur GraphQL est un outil qui réduit la taille en octets d'un schéma GraphQL (SDL) ou d'un document de requête en supprimant les commentaires, les lignes vides et les espaces, produisant ainsi un document GraphQL plus petit mais toujours valide. Notre compresseur GraphQL gratuit en ligne fonctionne entièrement dans votre navigateur sans téléchargement sur le serveur.
Oui. Le compresseur supprime uniquement les commentaires, les lignes vides et les espaces ; il ne modifie jamais les noms de types, les noms de champs, les directives ou les valeurs de chaîne. La sortie est un GraphQL valide que tout analyseur GraphQL peut traiter correctement.
Absolument. Notre compresseur GraphQL traite tout localement dans votre navigateur. Votre schéma et vos requêtes ne sont jamais téléchargés sur aucun serveur, jamais stockés et ne quittent jamais votre appareil.
Oui, 100 % gratuit, pour toujours. Aucune inscription, aucun compte, aucun niveau premium, aucune limite de taille de fichier et aucune publicité n'interrompant votre flux de travail.
Le mode sur une seule ligne réduit l'intégralité du document GraphQL en une seule ligne avec un minimum d'espace - le format standard pour les requêtes persistantes automatiques (APQ). Utilisez-le lorsque vous devez hacher une chaîne de requête pour APQ ou intégrer une requête dans un paramètre URL GET.
Descriptions de chaînes de blocs (""..."""), types de documents et champs dans les schémas SDL - ils apparaissent dans les résultats de l'introspection. Conservez-les lorsque le schéma est utilisé à des fins d'introspection ou de documentation. Supprimez-les uniquement pour les schémas d'exécution uniquement pour lesquels la documentation n'est pas nécessaire.
Oui. Le compresseur fonctionne avec n'importe quel document GraphQL valide : définitions de type SDL, opérations de requête/mutation/abonnement, fragments et fragments en ligne.
La compression GraphQL typique permet une réduction de taille de 20 à 60 % en fonction du nombre de commentaires et de lignes vides que contient le document d'origine. Les schémas SDL bien documentés se compressent de manière plus agressive lorsque la suppression des descriptions est activée.
Étant donné que la compression s'exécute entièrement dans votre navigateur, la limite pratique dépend de la RAM disponible de votre appareil. La plupart des appareils modernes gèrent sans problème des fichiers GraphQL allant jusqu'à plusieurs mégaoctets.