Hızlı başlangıç
-
İfadeyi girin
field, field[0], * wildcard.
-
Yapıştır JSON
AWS CLI --query'ye benzer alt küme.
-
Çıktı kopyala
Dosyalarda veya dosyalarda kullanın.
JSON ve JMESPath tarzı ifadeleri yapıştır items[0].name veya items* gibi Proje edilen sonuçları görmek için. AWS CLI, Azure ve birçok bulut API ' si tarafından kullanılır.
Gizlilik: yerel olarak işlenir, asla yüklenmez.
Anında sonuçları görmek için aşağıdaki giriş alanına yapıştırın
在 JSON 上测试 JMESPath 风格表达式; 支持 field、index 与 * 通配。
粘贴要查询的 JSON 文档。
"a"
支持 items[0].name、items.* 等常用子集; 复杂投影函数请用完整 JMESPath 库。本地处理。
JSON ve JMESPath tarzı ifadeleri yapıştır items[0].name veya items* gibi Proje edilen sonuçları görmek için. AWS CLI, Azure ve birçok bulut API ' si tarafından kullanılır.
İfadeyi girin
field, field[0], * wildcard.
Yapıştır JSON
AWS CLI --query'ye benzer alt küme.
Çıktı kopyala
Dosyalarda veya dosyalarda kullanın.
Büyük JSON yanıtlarından alanları, listeleri veya yuvalanmış değerleri ayıklayın; sözdizimi JSONPath-bulut belgeleri takip etmekten farklıdır.
Tipik bir JMESPath iş akışı üç adımı içerir: İlk olarak ham JSON verilerini yapıştırın (örneğin AWS CLI çıkışı), ardından bir sorgu ifadesi girin (örneğin `Rezervasyonlar[*].Instance[*].InstanceId` gibi tüm EC2 örnek kimliklerini çıkarmak için) ve nihayet gerçek zamanlı olarak filtrelenmiş sonuçları görüntüleyin. Bu etkileşimli yaklaşım, karmaşık iç içe veri çıkarma hata ayıklama için idealdir.
Gelişmiş kullanım, boru operatörleri ile çok adımlı işlemeyi içerir (`|`), örneğin filtrelerden sonra sıralama: `sort_by(Instances, &State.Name)[*].InstanceId`. Araç çıkışları otomatik olarak biçimlendirir ve özellikle bulut API yanıtlarına karşı ifadeleri doğrulamak için kullanışlıdır (örneğin 100 S3 kovalarını listelemek).
Input
items[0].name on {"items":[{"name":"a"}]} Output
"a"
Farklı sözdizimi ve fonksiyonlar; AWS / Azure JMESPath tercih, front-end / Node genellikle JSONPath kullanır.
Evet, evet. JSON tarayıcınızdan asla ayrılmaz.
Üç olası neden: 1) JSON yapısı uyumsuzluğu (ham verileri denetlemek için `@` sembolü kullanın); 2) Aşırı sıkı filtreler (örneğin `[? State=='running']` when no instances are running); 3) Unhandled nested arrays (requires `[*]` flattening). Basit ifadelerle başlayın ve kademeli olarak inşa edin.