Condividi tramite


Guida introduttiva: Utilizzare generatore di api dati con MySQL

In questa guida introduttiva si compila un set di file di configurazione di Generatore API dati per specificare come destinazione un database MySQL locale.

Prerequisiti

Suggerimento

In alternativa, aprire questa guida introduttiva in GitHub Codespaces con tutti i prerequisiti per gli sviluppatori già installati. È sufficiente usare la propria sottoscrizione di Azure. Gli account GitHub includono un entitlement di archiviazione e ore di core senza costi. Per altre informazioni, vedere l'articolo sullo spazio di archiviazione e le ore di core inclusi per gli account GitHub.

Aprire in GitHub Codespaces

Installare il CLI di Data API Builder

Installare il Microsoft.DataApiBuilder pacchetto da NuGet come strumento .NET.

  1. Usa dotnet tool install per installare la versione più recente di Microsoft.DataApiBuilder con l'argomento --global.

    dotnet tool install --global Microsoft.DataApiBuilder
    

    Annotazioni

    Se il pacchetto è già installato, aggiornare invece il pacchetto usando dotnet tool update.

    dotnet tool update --global Microsoft.DataApiBuilder
    
  2. Verifica che lo strumento sia installato usando dotnet tool list con l'argomento --global.

    dotnet tool list --global
    

Configurare il database locale

Iniziare configurando ed eseguendo il database locale. È quindi possibile eseguire il seeding di un nuovo contenitore con dati di esempio.

  1. Scarica l'ultima versione dell'immagine del contenitore da Docker Hub mysql:8.

    docker pull mysql:8
    
  2. Avviare il contenitore Docker impostando la password e la porta di pubblicazione 3306. Sostituire <your-password> con una password personalizzata.

    docker run \
        --publish 3306:3306 \
        --env "MYSQL_ROOT_PASSWORD=<your-password>" \
        --detach \
        mysql:8
    
  3. Connettersi al database locale usando l'ambiente di gestione dei dati preferito. Gli esempi includono, ma non sono limitati a: MySQL Workbench e la shell MySQL per Visual Studio Code.

    Suggerimento

    Se si usa la rete predefinita per le immagini del contenitore Docker Linux, è probabile che la stringa di connessione sia Server=localhost;Port=3306;Uid=root;Pwd=<your-password>;. Sostituire <your-password> con la password impostata in precedenza.

  4. Creare un nuovo bookshelf database e usare il database per le query rimanenti.

    CREATE DATABASE IF NOT EXISTS bookshelf;
    
    USE bookshelf;
    
  5. Creare una nuova dbo.authors tabella e inizializzarla con dati di base.

    CREATE TABLE IF NOT EXISTS authors
    (
        id INT NOT NULL PRIMARY KEY,
        first_name VARCHAR(100) NOT NULL,
        middle_name VARCHAR(100),
        last_name VARCHAR(100) NOT NULL
    );
    
    INSERT INTO authors VALUES
        (01, 'Henry', NULL, 'Ross'),
        (02, 'Jacob', 'A.', 'Hancock'),
        (03, 'Sydney', NULL, 'Mattos'),
        (04, 'Jordan', NULL, 'Mitchell'),
        (05, 'Victoria', NULL, 'Burke'),
        (06, 'Vance', NULL, 'DeLeon'),
        (07, 'Reed', NULL, 'Flores'),
        (08, 'Felix', NULL, 'Henderson'),
        (09, 'Avery', NULL, 'Howard'),
        (10, 'Violet', NULL, 'Martinez');
    

Creare i file di configurazione

Creare un file di configurazione di base usando l'interfaccia della riga di comando di DAB. Aggiungere quindi un file di configurazione di sviluppo con le credenziali correnti.

  1. Creare un file di configurazione tipico usando dab init. Aggiungi l'argomento --connection-string con la stringa di connessione del database dalla prima sezione. Sostituire <your-password> con la password impostata in precedenza in questa guida. Aggiungere anche il Database=bookshelf valore alla stringa di connessione.

    dab init --database-type "mysql" --host-mode "Development" --connection-string "Server=localhost;Port=3306;Database=bookshelf;Uid=root;Pwd=<your-password>;"
    
  2. Aggiungere un'entità Author usando dab add.

    dab add Author --source "authors" --permissions "anonymous:*"
    
  3. Osserva il file di configurazione dab-config.json corrente. Il file deve includere un'implementazione di base dell'API con una singola entità, un endpoint DELL'API REST e un endpoint GraphQL.

Testare l'API con il database locale

Avviare ora lo strumento Generatore API dati per verificare che i file di configurazione vengano uniti durante lo sviluppo.

  1. Usare dab start per eseguire lo strumento e creare endpoint API per l'entità.

    dab start
    
  2. L'output dello strumento deve includere l'indirizzo da usare per passare all'API in esecuzione.

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

    Suggerimento

    In questo esempio l'applicazione viene eseguita sulla localhost porta 5000. L'applicazione in esecuzione può avere un indirizzo e una porta diversi.

  3. Provare prima di tutto l'API manualmente inviando una richiesta GET a /api/Author.

    Suggerimento

    In questo esempio l'URL sarà https://localhost:5000/api/Author. È possibile passare a questo URL usando il Web browser.

  4. Passare quindi alla pagina della documentazione di Swagger all'indirizzo /swagger.

    Suggerimento

    In questo esempio l'URL sarà https://localhost:5000/swagger. Anche in questo caso, è possibile passare a questo URL usando il Web browser.

Passo successivo