Aracılığıyla paylaş


GraphQL düzenleyicisi için Doku API'si

GraphQL için Doku API'si, graphQL sorgularınızın ve mutasyonlarınızın canlı sonuçlarını oluşturmak, test etmek ve görmek için etkileşimli bir oyun alanı sağlayan grafiksel bir tarayıcı içi GraphQL geliştirme ortamı sağlar.

Düzenleyiciye gitmek için Çalışma alanında GraphQL API'sini Fabric'de açın ve portal ekranının sol alt köşesindeki Sorgu'yu seçin.

Fabric ekranının sol alt köşesinde Sorgu seçeneğinin nerede göründüğünü gösteren ekran görüntüsü.

GraphQL sorgularını doğrudan Sorgu sekmesinde yazın ve yürütür. Intellisense özellikleri bir klavye kısayoluyla kullanılabilir: CTRL + Ara Çubuğu (Windows) veya Command + Ara Çubuğu (macOS). Sorguyu yürütmek ve veri kaynağından veri almak için Çalıştır'ı seçin.

Çalıştır, Sorgu değişkenleri ve Sonuçlar bölmelerine bölünmüş bir Sorgu sekmesini gösteren API düzenleyicisi ekranının ekran görüntüsü.

Kod oluşturma

İstenen GraphQL işlemini test edip prototip oluşturduktan sonra API düzenleyicisi, düzenleyicide yürütülen sorguyu veya mutasyonu temel alarak ortak Python veya Node.js kodu oluşturur. Oluşturulan kodu test amacıyla yerel olarak çalıştırabilir ve uygulama geliştirme sürecinde bu kodun bölümlerini yeniden kullanabilirsiniz.

Önemli

Oluşturulan kod etkileşimli tarayıcı kimlik bilgilerini kullanır ve yalnızca test amacıyla kullanılmalıdır. Üretimde, bir uygulamayı her zaman Microsoft Entra'ya kaydedin ve uygun client_id ve kapsamları kullanın. Örnek kod içeren uçtan uca bir örneği Connect Applications adresinde bulabilirsiniz.

Başlamak için bir sorgu yürüterek Kod oluştur düğmesini seçin ve dili uygun şekilde seçin:

Kod oluşturma seçeneğini gösteren API düzenleyicisi ekranının ekran görüntüsü.

Daha sonra oluşturulan kodu kopyalayıp yerel bir klasöre dosya olarak kaydedebilirsiniz. Seçilen dile bağlı olarak, yerel olarak test etmek için şu basit adımları izleyin:

Python

  1. komutunu python -m venv .venvçalıştırarak bir sanal ortam oluşturun.

  2. venv veya .venv\Scripts\activatekomutunu çalıştırarak source .venv/bin/activate etkinleştirin.

  3. komutunu çalıştırarak pip install azure.identitygerekli bağımlılığı yükleyin.

  4. Kodu python <filename.py> ile çalıştır.

Node.JS

  1. Kaydettiğiniz dosyayla aynı klasörde aşağıdaki içeriğe sahip bir package.json dosya oluşturun:

    {
      "type": "module",
      "dependencies": {}
    }
    
  2. Kimlik kitaplığının en son sürümünü yüklemek için seçtiğiniz paket yöneticisinde veya benzer bir komut çalıştırın npm install --save @azure/identity .

  3. Kodu node <filename>.js ile çalıştır.

Sorguların ve mutasyonların geliştirilmesi

Bu kısa GraphQL şemasını gözden geçirin. Tek bir gönderiyi okumak veya tüm gönderileri listelemek için sorgular içeren tek Post bir tür tanımlar ve gönderi oluşturma, güncelleştirme veya silme mutasyonları, tüm CRUDL (oluşturma, okuma, güncelleştirme, silme, listeleme) kullanım örneklerini destekler.

{
  type Post {
    id: ID!
    published: Boolean
  }

  type Query {
    getPost(id: ID!): Post
    getAllPosts: [Post]
  }

  type Mutation {
    createPost(title: String!, content: String!, author: String!): Post
    updatePost(id: ID!, title: String, content: String, author: String, published: Boolean): Post
    deletePost(id: ID!): Boolean
  }
}

Şemada tanımlanan herhangi bir sorguyu kullanarak GraphQL aracılığıyla kullanıma sunulan verileri okuyun. Sorgu getPost bu örneğe benzer.

query MyQuery {
  getPost(id: "1234") {
    title
    content
    author
  }
}

Yanıt:

{
  "data": {
    "getPost": {
      "title": "First Post",
      "content": "This is my first post.",
      "author": "Jane Doe"
    }
  }
}

Veri yazmak ve gerekli parametrelerle bir gönderi oluşturmak için gibi createPost mutasyonları kullanın.

mutation MyMutation {
  createPost(title: "Second post", content: "This is my second post", author: "Jane Doe", published: false) {
    id
    title
    content
    author
  }
}

Yanıt:

{
  "data": {
    "createPost": {
      "id": "5678",
      "title": "Second Post",
      "content": "This is my second post.",
      "author": "Jane Doe"
    }
  }
}

Sorgu değişkenleri

Parametreleri sorgularınıza veya mutasyonlarınıza değişken olarak geçirmek için Sorgu sekmesinin sağ tarafındaki Sorgudeğişkenleri bölmesini kullanın. Değişkenler, diğer programlama dillerindeki değişkenler gibi çalışır. Her değişken, içinde depolanan değere erişmek için kullanılan bir adla bildirilir. Önceki mutasyon örneğini kullanarak sorgu değişkenlerini kullanmak için biraz değişiklik yapabilirsiniz.

mutation MyMutation ($title: String!, $content: String!, $author: String!){
  createPost(title: $title, content: $content, author: $author) {
    id
    title
    content
    author
  }
}

Aşağıdaki örneği kullanarak bölmede değişkenleri tanımlayın.

{
  "id": "5678",
  "title": "Second Post",
  "content": "This is my second post.",
  "author": "Jane Doe"
}

Değişkenler mutasyon kodunu daha temiz hale getirir, okunmasını, testini ve değiştirilmesini kolaylaştırır.