Sdílet prostřednictvím


Rychlý start: Použití tvůrce rozhraní Data API s NoSQL

V tomto rychlém startu vytvoříte sadu konfiguračních souborů Tvůrce rozhraní Data API, které budou cílit na emulátor Azure Cosmos DB for NoSQL.

Požadavky

Návod

Případně otevřete tento rychlý start v GitHub Codespaces se všemi požadavky vývojáře, které už jsou nainstalované. Jednoduše přineste vlastní předplatné Azure. Účty GitHubu zahrnují nárok na úložiště a hodiny jádra bez poplatků. Další informace najdete v zahrnutých hodinách úložiště a jader pro účty GitHubu.

Otevřít v GitHub Codespaces

Instalovat Data API builder CLI

Nainstalujte balíček Microsoft.DataApiBuilder z NuGetu jako nástroj .NET.

  1. Použijte dotnet tool install k instalaci nejnovější verze Microsoft.DataApiBuilder s argumentem --global.

    dotnet tool install --global Microsoft.DataApiBuilder
    

    Poznámka:

    Pokud je balíček již nainstalován, aktualizujte balíček místo toho pomocí dotnet tool update.

    dotnet tool update --global Microsoft.DataApiBuilder
    
  2. Pomocí argumentu --global ověřte, že je nástroj nainstalovanýdotnet tool list.

    dotnet tool list --global
    

Konfigurace místní databáze

Začněte spuštěním místního emulátoru. Pak můžete vytvořit nový kontejner s ukázkovými daty.

  1. Získejte nejnovější kopii image kontejneru mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest z Docker Hubu.

    docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
    
  2. Spusťte kontejner Dockeru publikováním portu 8081 a rozsahu portů 10250–10255.

    docker run \
        --publish 8081:8081 \
        --publish 10250-10255:10250-10255 \
        --detach \
        mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
    
  3. Stáhněte si samopodepsaný certifikát pro emulátor

    curl -k https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crt
    
  4. Nainstalujte certifikát podepsaný svým držitelem pomocí kroků Bash pro Linux nebo kroků PowerShellu pro Windows.

    sudo cp ~/emulatorcert.crt /usr/local/share/ca-certificates/
    sudo update-ca-certificates
    
    certutil -f -addstore "Root" emulatorcert.crt
    
  5. Připojte se k místní databázi pomocí upřednostňovaného prostředí pro správu dat. Mezi příklady patří: Azure Data Studio a rozšíření Azure Databases pro Visual Studio Code.

    Návod

    Výchozí připojovací řetězec emulátoru je AccountEndpoint=https://localhost:8081;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;.

  6. Vytvořte novou bookshelf databázi a authors kontejner.

  7. Naplníte kontejner s těmito základními daty JSON.

    [
      {
        "id": "01",
        "firstName": "Henry",
        "lastName": "Ross"
      },
      {
        "id": "02",
        "firstName": "Jacob",
        "middleName": "A.",
        "lastName": "Hancock"
      },
      {
        "id": "03",
        "firstName": "Sydney",
        "lastName": "Mattos"
      },
      {
        "id": "04",
        "firstName": "Jordan",
        "lastName": "Mitchell"
      },
      {
        "id": "05",
        "firstName": "Victoria",
        "lastName": "Burke"
      },
      {
        "id": "06",
        "firstName": "Vance",
        "lastName": "DeLeon"
      },
      {
        "id": "07",
        "firstName": "Reed",
        "lastName": "Flores"
      },
      {
        "id": "08",
        "firstName": "Felix",
        "lastName": "Henderson"
      },
      {
        "id": "09",
        "firstName": "Avery",
        "lastName": "Howard"
      },
      {
        "id": "10",
        "firstName": "Violet",
        "lastName": "Martinez"
      }
    ]
    

    Návod

    Metoda použitá k počátečním datům bude do značné míry záviset na nástroji pro správu dat. Pro Azure Data Studio můžete toto pole JSON uložit jako soubor.json a pak použít funkci Import .

Vytvoření konfiguračních souborů

Vytvořte základní konfigurační soubor pomocí rozhraní příkazového řádku DAB. Pak přidejte konfigurační soubor pro vývoj s vašimi aktuálními přihlašovacími údaji.

  1. Vytvořte nový soubor s názvem schema.graphql s tímto obsahem schématu.

    type Author @model {
      id: ID!
      firstName: String!
      middleName: String
      lastName: String!
    }
    
  2. Vytvořte typický konfigurační soubor pomocí dab initpříkazu . --connection-string Přidejte argument s výchozím připojovacím řetězcem emulátoru.

    dab init --database-type "cosmosdb_nosql" --host-mode "Development" --cosmosdb_nosql-database bookshelf --graphql-schema schema.graphql --connection-string "AccountEndpoint=https://localhost:8081;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;"
    
  3. Přidejte entitu Author pomocí dab add.

    dab add Author --source "authors" --permissions "anonymous:*"
    

Testování rozhraní API s místní databází

Teď spusťte nástroj Tvůrce rozhraní Data API a ověřte, že se konfigurační soubory sloučí během vývoje.

  1. Slouží dab start ke spuštění nástroje a vytvoření koncových bodů rozhraní API pro vaši entitu.

    dab start
    
  2. Výstup nástroje by měl obsahovat adresu, která se má použít k přechodu na spuštěné rozhraní API.

          Successfully completed runtime initialization.
    info: Microsoft.Hosting.Lifetime[14]
          Now listening on: <http://localhost:5000>
    info: Microsoft.Hosting.Lifetime[0]
    

    Návod

    V tomto příkladu aplikace běží na localhost portu 5000. Spuštěná aplikace může mít jinou adresu a port.

  3. Přejděte ke koncovému bodu GraphQL tak, že navštívíte /graphql a spustíte tuto operaci.

    query {
      authors {
        items {
          id
          firstName
          lastName
        }
      }
    }
    

    Návod

    V tomto příkladu by adresa URL byla https://localhost:5000/graphql. Na tuto adresu URL můžete přejít pomocí webového prohlížeče.

Další krok