GraphQL Sorgu Oluşturucu
GraphQL operasyonunu elle yazmak, süslü parantezleri, argümanları ve girintileri düzenli tutmayı gerektirir. Bu oluşturucu belgeyi sizin için bir araya getirir: sorgu, mutasyon veya abonelik seçin, operasyona ad verin, kök alanı belirleyin, argüman ekleyin ve ihtiyacınız olan alanları listeleyin. Sonuç, doğrudan Apollo, urql veya GraphiQL’e yapıştırabileceğiniz biçimlendirilmiş bir operasyondur.
GraphQL operasyonu nasıl oluşturulur?
-
1
Operasyon türünü seçin
Açılır listeden sorgu, mutasyon veya abonelik seçin. Bu, sunucunun çalıştıracağı operasyon türünü belirler.
-
2
Operasyona ad verin
Sunucunun operasyonu kaydedip önbelleğe alabilmesi için GetUser gibi bir ad verin. Ad isteğe bağlıdır; oluşturucu adsız da çalışır.
-
3
Kök alanı belirleyin
Çağırmak istediğiniz alanı yazın, örneğin user, createPost veya orderUpdated.
-
4
Argüman ekleyin
id: "123" veya id: $id gibi anahtar-değer çiftleri ekleyin. Anahtarı boş olan satırlar atlanır.
-
5
Alanları listeleyin ve kopyalayın
Her satıra bir alan yazın, sorguyu oluşturun ve biçimlendirilmiş belgeyi panoya kopyalayın.
GraphQL belgeleriyle çalışmak
Bir GraphQL belgesi, bir veya daha fazla işlem ile bu işlemlerin referans ettiği tüm parçaların bir araya gelmesinden oluşur. Her işlem, Query, Mutation veya Subscription türünden bir kök alanını belirtir ve sunucu istenen seçim kümesini çözer. Oluşturucu operasyon metnini sizin için yazar, ancak şemanızı bilmez; bu yüzden operasyonu çalıştırmadan önce her alan ve argüman adını API’nizle karşılaştırın.
Operasyonun yapısı
| Bölüm | Amacı | Örnek |
|---|---|---|
| Operasyon türü | Sorgu, mutasyon veya abonelik | query, mutation, subscription |
| Operasyon adı | Önbelleğe alma ve günlükler için kullanılır | GetUserById |
| Argümanlar | Kök alana iletilen değerler | user(id: "123") |
| Seçim kümesi | Alanlar ve iç içe seçmeler | { user(id: "123") { name posts { title } } } |
| Değişkenler | Operasyon adıyla birlikte bildirilen tipli girdiler | query GetUser($id: ID!) { user(id: $id) { name } } |
Sık yapılan hatalar
- Zorunlu değişkenler
!ile biter. ŞemadaNonNullolarak işaretlenen argümanlarda bunu unutmak, çözücü çalışmadan önce doğrulama hatasına yol açar. - Metin argümanları tırnak gerektirir.
123gibi bir değer sayıdır; metin değeri argüman satırında çift tırnakla"123"biçiminde yazılmalıdır. - Birleşim ve arayüz türleri, türe özgü alanları okumak için
... on TypeNameiçsel parçalarını gerektirir. - Takma ad (alias), aynı alanı farklı argümanlarla iki kez istediğinizde zorunludur; örneğin
today: stats(period: DAY)veweek: stats(period: WEEK). - Bağlantılar (Relay spesifikasyonu)
edges { node { ... } }vepageInfo { endCursor hasNextPage }alanlarını açar; ikisinden birini atlamak sayfalamayı bozar.
İpuçları
- Apollo Client’in operasyonları ayrı ayrı önbelleğe alabilmesi için operasyonları küçük tutun ve adlandırın.
- Değişen değerleri değişmezler yerine değişken olarak iletin; böylece sunucu belgeyi bir kez ayrıştırıp yeniden kullanır. Değişkenleri operasyon adının yanında bildirin, örneğin
query GetUser($id: ID!). - Bir alan birden çok argüman gerektiriyorsa bunları tek bir argüman satırına virgülle ayırarak yazın, örneğin değer olarak
filter: { status: ACTIVE }. - Oluşturucu, yapılandırdığınız metni aynen üretir. Bir operasyon başarısız olursa önce alan adlarınızı güncel şemayla karşılaştırın.
Sık Sorulan Sorular
Hayır. Yalnızca girdiğiniz metni biçimlendirir; çağrılacak bir uç nokta yoktur ve şema gerekmez. Operasyonun bölümlerini doldurun, oluşturucu belgeyi sizin için bir araya getirsin.
Evet. Operasyon açılır listesinden sorgu, mutasyon ve abonelik arasında geçiş yapabilirsiniz. Geri kalan her şey aynı çalışır: ad, kök alan, argümanlar ve alanlar.
Argüman bölümüne satırlar ekleyin. Anahtar, argüman adıdır; değer de ilettiğiniz şeydir, örneğin id: “123” veya id: $id. Anahtarı boş olan satırlar yok sayılır. $id gibi bir değişken yazdıysanız, kendiniz operasyon adının yanında bildirin, örneğin query GetUser($id: ID!).
Oluşturucu, yazdığınız metni aynen üretir. Bu hata genellikle bir alan veya argüman adının sunucu şemanızla eşleşmediği anlamına gelir: kök alanı ve her alan adını API’nizle karşılaştırın ve yazımı düzeltin.
İlgili Araçlar
ASCII Tablosu Referansı
NUL, LF ve DEL dahil her kod için ondalık, onaltılık, sekizlik ve ikili değerlerle HTML sayısal karakter başvurusu gösterimini sunan tam ASCII tablosu.
HTML Karakter Referansı
HTML varlıklarının aranabilir listesi; adlandırılmış ve sayısal kodlarıyla birlikte özel karakter ve semboller için tek tıkla kopyalama.
Klavye kısayolları başvurusu
macOS, Windows ve Linux’ta VS Code, Chrome ve GNU Readline kullanan Bash için belgelenmiş varsayılan kısayolları arayın.
EditorConfig Oluşturucu
Girinti stili ve boyutu, satır sonu, karakter kümesi ve boşluk kurallarınızla bir .editorconfig dosyası oluşturarak IDE ve editörler arasında tutarlı biçimlendirme sağlayın.
E-posta Doğrulayıcı
Bir e-posta adresini doğrulayın: RFC 5322 sözdizimi kontrolü, canlı MX kaydı sorgulama, ayrıca yerel kısım, alan adı ve uzunluk bilgileri. Hiçbir e-posta gönderilmez.
Gradyan Duvar Kağıdı Oluşturucu
Dizüstü bilgisayar, telefon veya Zoom arka planları için bulanık üç renkli gradyan duvar kağıtları oluşturun. Açıyı ve bulanıklığı rastgele belirleyin ya da elle ayarlayın.
Araç diğer dillerde mevcuttur
- GraphQL-frågebyggare [SV]
- أداة إنشاء استعلامات GraphQL [AR]
- GraphQL 쿼리 빌더 [KO]
- Constructeur de requêtes GraphQL [FR]
- GraphQLクエリビルダー [JA]
- GraphQL-Abfrage-Builder [DE]
- GraphQL-querybouwer [NL]
- Pembuat Kueri GraphQL [ID]
- Trình tạo truy vấn GraphQL [VI]
- เครื่องสร้าง GraphQL Query [TH]
- Constructor de Consultas GraphQL [ES]
- Kreator zapytań GraphQL [PL]
- Construtor de Consultas GraphQL [PT]
- GraphQL Query Builder [EN]
- Costruttore di Query GraphQL [IT]
- Построитель запросов GraphQL [RU]
- GraphQL查询构建器 [ZH]