Kompresor GraphQL
Kompres skema GraphQL dan kueri dokumen online secara gratis dengan menghapus komentar, baris kosong, dan spasi. Kompresor GraphQL kami menangani deskripsi string blok dengan benar dan mendukung mode penciutan satu baris untuk menghasilkan ID kueri yang bertahan. Menunjukkan penghematan ukuran kabel dan pengurangan jumlah saluran. Semua pemrosesan terjadi di browser Anda - skema Anda tidak pernah meninggalkan perangkat Anda. Tidak perlu mendaftar.
Compression Options
Mengapa Menggunakan Kompresor GraphQL Kami?
- Kompresi GraphQL Instan: Kompres skema GraphQL atau dokumen kueri apa pun dalam milidetik. Kompresor GraphQL kami memproses semuanya secara lokal di browser Anda - tanpa perlu menunggu unggahan, tanpa perlu bolak-balik server, tanpa latensi.
- Amankan Kompresor GraphQL Online: Skema dan kueri GraphQL Anda tidak pernah meninggalkan perangkat saat Anda mengompresnya. Pemrosesan sisi klien 100% berarti privasi lengkap - tanpa penyimpanan cloud, tanpa log server, tanpa paparan data.
- GraphQL Compressor Online - Tanpa Instalasi: Kompres GraphQL langsung di browser Anda. Tidak perlu mengunduh perangkat lunak, tidak perlu plugin, tidak perlu akun. Berfungsi pada browser modern apa pun dan pada sistem operasi apa pun.
- Mode Satu Baris untuk Kueri yang Bertahan: Aktifkan "Ciutkan ke Satu Baris" untuk menghasilkan string GraphQL yang paling ringkas - ideal untuk menghasilkan ID kueri yang bertahan, menyematkan kueri dalam parameter HTTP GET, dan mengurangi ukuran transfer kawat.
Kasus Penggunaan Umum untuk Kompresor GraphQL
- Pembuatan Kueri yang Bertahan: Kompres kueri GraphQL menjadi satu baris sebelum melakukan hashing untuk ID kueri yang bertahan. Klien Apollo, Relay, dan klien GraphQL lainnya menggunakan string kueri terkompresi sebagai input ke hashing SHA-256 untuk kueri yang bertahan otomatis (APQ).
- Pengurangan Ukuran Kawat API: Kompres dokumen kueri GraphQL sebelum mengirimkannya dalam badan permintaan HTTP atau parameter GET. Menghapus spasi dan komentar dari kueri GraphQL pada umumnya dapat mengurangi ukuran payload sebesar 30-60%, sehingga meningkatkan waktu respons API.
- Pengoptimalan Registri Skema: Kompres skema SDL GraphQL sebelum diunggah ke registri skema seperti Apollo Studio, Hasura, atau penyimpanan skema khusus. File skema yang lebih kecil mengurangi biaya penyimpanan dan mempercepat alur validasi skema.
- Kompresi Penyimpanan Kueri: Kompres kueri GraphQL sebelum menyimpannya di database, cache Redis, atau file konfigurasi. Menghapus komentar dan spasi akan mengurangi ukuran penyimpanan dan mempercepat pengambilan kueri di server GraphQL dengan throughput tinggi.
- Prapemrosesan Pembuatan Kode: Kompres file skema GraphQL sebelum memasukkannya ke dalam alat pembuatan kode seperti GraphQL Code Generator, Pothos, atau TypeGraphQL. File masukan yang lebih kecil mempercepat pembuatan kode dan mengurangi ukuran artefak menengah.
- Skema yang Dilucuti Dokumentasi: Buat versi skema SDL GraphQL yang dilucuti dokumentasi untuk build internal yang tidak memerlukan deskripsi introspeksi. Hapus deskripsi string blok (""") untuk menghasilkan skema minimal untuk penggunaan runtime.
Apa itu Kompresi GraphQL?
Kompresi GraphQL adalah proses mengurangi ukuran byte dokumen GraphQL - baik file Schema Definition Language (SDL) atau dokumen kueri/mutasi/langganan - dengan menghapus konten yang tidak diperlukan untuk penguraian atau eksekusi. Ini termasuk # komentar, baris kosong, spasi tambahan, dan deskripsi string opsional ("""..."""). Kompresor GraphQL kami menggunakan tokenizer yang mengidentifikasi string blok dan string reguler dengan benar, memastikan kontennya tidak pernah diubah. Mode "Ciutkan ke Satu Baris" menghasilkan keluaran paling ringkas - format standar yang digunakan untuk Kueri Bertahan Otomatis (APQ) di Klien dan Relai Apollo.
Cara Kerja Kompresor GraphQL Kami
- 1 Tempel atau unggah GraphQL Anda: Masukkan skema SDL GraphQL atau dokumen kueri apa pun di panel input, atau unggah file a.graphql,.gql, atau.graphqls. Konfigurasikan elemen mana yang akan dihapus menggunakan opsi matikan.
- 2 Kompresi berbasis browser instan: Klik "Kompres GraphQL". Dokumen tersebut diberi token untuk mengidentifikasi string, string blok, dan komentar - kemudian setiap pass yang diaktifkan berjalan secara lokal di browser Anda tanpa data dikirim ke server mana pun.
- 3 Salin atau unduh GraphQL terkompresi: Salin output ke clipboard atau unduh sebagai file a.graphql. Outputnya adalah GraphQL valid yang dapat diproses secara langsung oleh parser GraphQL mana pun.
Apa yang Dihapus
- Komentar (#): Semua # baris komentar dihapus. GraphQL menggunakan # untuk komentar baris - komentar tersebut tidak pernah diperlukan untuk eksekusi skema atau kueri.
- Garis Kosong: Garis kosong dan garis hanya spasi di antara definisi dihilangkan. Ini umum terjadi pada skema SDL dan dokumen kueri yang diformat dengan baik.
- Deskripsi String Blokir (""..."""): Ketika "Hapus Deskripsi" diaktifkan, deskripsi string blok yang digunakan untuk dokumentasi SDL akan dihapus. Nonaktifkan opsi ini ketika skema digunakan untuk introspeksi atau pembuatan dokumentasi.
- Normalisasi Spasi Putih: Beberapa spasi berturut-turut diciutkan menjadi satu spasi, dan spasi putih di sekitar tanda baca GraphQL (kurung kurawal, titik dua, pipa) dinormalisasi. Dalam mode satu baris, semua spasi diciutkan ke jumlah minimum yang diperlukan.
Kueri yang Bertahan dan Mode Satu Baris
Kueri Bertahan Otomatis (APQ) bekerja dengan mengirimkan hash SHA-256 dari string kueri alih-alih kueri lengkap pada permintaan berikutnya. Hash harus dihitung dari string yang sama persis dengan yang di-cache oleh server. Pendekatan standarnya adalah mengompresi kueri menjadi satu baris (menghapus semua spasi yang tidak perlu) sebelum melakukan hashing. Aktifkan "Ciutkan ke Satu Baris" untuk menghasilkan format satu baris kanonik yang digunakan oleh normalisasi print(parse(query)) Klien Apollo. Hal ini memastikan klien dan server Anda menghitung hash yang identik untuk kueri logis yang sama.
Pertanyaan yang Sering Diajukan
Kompresor GraphQL adalah alat yang mengurangi ukuran byte skema GraphQL (SDL) atau dokumen kueri dengan menghapus komentar, baris kosong, dan spasi - menghasilkan dokumen GraphQL yang lebih kecil namun tetap valid. Kompresor GraphQL online gratis kami berfungsi sepenuhnya di browser Anda tanpa perlu mengunggah server.
Ya. Kompresor hanya menghapus komentar, baris kosong, dan spasi - tidak pernah mengubah nama tipe, nama bidang, arahan, atau nilai string. Outputnya adalah GraphQL valid yang dapat diproses oleh parser GraphQL mana pun dengan benar.
Sangat. Kompresor GraphQL kami memproses semuanya secara lokal di browser Anda. Skema dan kueri Anda tidak pernah diunggah ke server mana pun, tidak pernah disimpan, dan tidak pernah keluar dari perangkat Anda.
Ya - 100% gratis, selamanya. Tanpa pendaftaran, tanpa akun, tanpa tingkat premium, tanpa batasan ukuran file, dan tanpa iklan yang mengganggu alur kerja Anda.
Mode satu baris menciutkan seluruh dokumen GraphQL menjadi satu baris dengan spasi minimal - format standar untuk Kueri Bertahan Otomatis (APQ). Gunakan saat Anda perlu melakukan hashing string kueri untuk APQ atau menyematkan kueri dalam parameter URL GET.
Deskripsi string blok (""...""") jenis dan bidang dokumen dalam skema SDL - muncul di hasil introspeksi. Simpan saat skema digunakan untuk introspeksi atau dokumentasi. Hapus hanya untuk skema waktu proses saja yang tidak memerlukan dokumentasi.
Ya. Kompresor berfungsi dengan dokumen GraphQL apa pun yang valid - definisi tipe SDL, operasi kueri/mutasi/langganan, fragmen, dan fragmen sebaris.
Kompresi GraphQL pada umumnya mencapai pengurangan ukuran 20-60% tergantung pada berapa banyak komentar dan baris kosong yang terdapat dalam dokumen asli. Skema SDL yang terdokumentasi dengan baik akan melakukan kompresi paling agresif ketika penghapusan deskripsi diaktifkan.
Karena kompresi dijalankan sepenuhnya di browser Anda, batas praktisnya bergantung pada RAM yang tersedia di perangkat Anda. Sebagian besar perangkat modern menangani file GraphQL hingga beberapa megabyte tanpa masalah.