Sdílet prostřednictvím


Rychlý start: Použití Tvůrce rozhraní DATA API s NoSQL

V tomto rychlém startu sestavíte sadu konfiguračních souborů Tvůrce rozhraní DATA API pro cílení na emulátor služby Azure Cosmos DB for NoSQL.

Požadavky

Tip

Případně můžete otevřít tento rychlý start v GitHub Codespaces se všemi nainstalovanými požadavky pro vývojáře. Jednoduše si přineste vlastní předplatné Azure. Účty GitHubu zahrnují nárok na úložiště a základní hodiny bez poplatků. Další informace najdete v tématu zahrnuté hodiny úložiště a základní doby pro účty GitHubu.

Otevřít v GitHub Codespaces

Instalace rozhraní příkazového řádku Tvůrce rozhraní api dat

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

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

    dotnet tool install --global Microsoft.DataApiBuilder
    

    Poznámka

    Pokud už je balíček nainstalovaný, místo toho ho aktualizujete pomocí dotnet tool updatepříkazu .

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

    dotnet tool list --global
    

Konfigurace místní databáze

Začněte spuštěním místního emulátoru. Pak můžete do nového kontejneru přidat ukázková data.

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

    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. Stažení certifikátu podepsaného svým držitelem pro emulátor

    curl -k https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crt
    
  4. Nainstalujte certifikát podepsaný svým držitelem pomocí postupu Bash pro Linux nebo postupu 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ří mimo jiné Azure Data Studio a rozšíření Azure Databases pro Visual Studio Code.

    Tip

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

  6. Create novou bookshelf databázi a authors kontejner.

  7. Do kontejneru se zasadí tato základní data 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"
      }
    ]
    

    Tip

    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. V případě nástroje Azure Data Studio můžete toto pole JSON uložit jako soubor .json a pak použít funkci Import .

Create konfigurační soubory

Create konfigurační soubor směrného plánu pomocí rozhraní příkazového řádku DAB. Pak přidejte konfigurační soubor vývoje s vašimi aktuálními přihlašovacími údaji.

  1. Create 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. Create typický konfigurační soubor pomocí dab init. --connection-string Přidejte argument s výchozím připojovací řetězec 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í API pro data a ověřte, že se konfigurační soubory během vývoje sloučí.

  1. Použijte 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]
    

    Tip

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

  3. Přejděte na koncový bod GraphQL tak, že přejdete na /graphql a spustíte tuto operaci.

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

    Tip

    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