Início Rápido: Utilizar o Construtor de API de Dados com o MySQL
Neste Início Rápido, vai criar um conjunto de ficheiros de configuração do construtor de API de Dados para direcionar uma base de dados MySQL local.
Pré-requisitos
- Docker
- .NET 8
- Um cliente de gestão de dados
- Se não tiver um cliente instalado, instale o Azure Data Studio
Dica
Em alternativa, abra este Início Rápido no GitHub Codespaces com todos os pré-requisitos do programador já instalados. Basta trazer a sua própria subscrição do Azure. As contas do GitHub incluem uma elegibilidade de armazenamento e horas essenciais sem custos. Para obter mais informações, veja o armazenamento incluído e as horas principais das contas do GitHub.
Instalar a CLI do Construtor de API de Dados
Instale o pacote a Microsoft.DataApiBuilder
partir do NuGet como uma ferramenta .NET.
Utilize
dotnet tool install
para instalar a versão mais recente doMicrosoft.DataApiBuilder
com o--global
argumento .dotnet tool install --global Microsoft.DataApiBuilder
Nota
Se o pacote já estiver instalado, irá atualizar o pacote com
dotnet tool update
.dotnet tool update --global Microsoft.DataApiBuilder
Verifique se a ferramenta está instalada com
dotnet tool list
o--global
argumento .dotnet tool list --global
Configurar a base de dados local
Comece por configurar e executar a base de dados local. Em seguida, pode propagar um novo contentor com dados de exemplo.
Obtenha a cópia mais recente da imagem de contentor do
mysql:8
Docker Hub.docker pull mysql:8
Inicie o contentor do Docker ao definir a palavra-passe e a porta de publicação 3306. Substitua por
<your-password>
uma palavra-passe personalizada.docker run \ --publish 3306:3306 \ --env "MYSQL_ROOT_PASSWORD=<your-password>" \ --detach \ mysql:8
Ligue-se à base de dados local com o seu ambiente de gestão de dados preferencial. Os exemplos incluem, mas não estão limitados a: MySQL Workbench, Azure Data Studio e a shell MySQL para Visual Studio Code.
Dica
Se estiver a utilizar redes predefinidas para as imagens de contentor do Docker Linux, o cadeia de ligação provavelmente será
Server=localhost;Port=3306;Uid=root;Pwd=<your-password>;
. Substitua<your-password>
pela palavra-passe que definiu anteriormente.Create uma nova
bookshelf
base de dados e utilize a base de dados para as consultas restantes.CREATE DATABASE IF NOT EXISTS bookshelf; USE bookshelf;
Create uma nova
dbo.authors
tabela e propagar a tabela com dados básicos.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');
Create ficheiros de configuração
Create um ficheiro de configuração de linha de base com a CLI da DAB. Em seguida, adicione um ficheiro de configuração de desenvolvimento com as suas credenciais atuais.
Create um ficheiro de configuração típico com
dab init
. Adicione o argumento com a--connection-string
base de dados cadeia de ligação da primeira secção. Substitua<your-password>
pela palavra-passe que definiu anteriormente neste guia. Além disso, adicione oDatabase=bookshelf
valor à cadeia de ligação.dab init --database-type "mysql" --host-mode "Development" --connection-string "Server=localhost;Port=3306;Database=bookshelf;Uid=root;Pwd=<your-password>;"
Adicione uma entidade Autor com
dab add
.dab add Author --source "authors" --permissions "anonymous:*"
Observe o ficheiro de configuração do dab-config.json atual. O ficheiro deve incluir uma implementação de linha de base da sua API com uma única entidade, um ponto final da API REST e um ponto final do GraphQL.
Testar a API com a base de dados local
Agora, inicie a ferramenta de construtor de API de Dados para validar que os ficheiros de configuração são intercalados durante o desenvolvimento.
Utilize
dab start
para executar a ferramenta e criar pontos finais de API para a sua entidade.dab start
O resultado da ferramenta deve incluir o endereço a utilizar para navegar para a API em execução.
Successfully completed runtime initialization. info: Microsoft.Hosting.Lifetime[14] Now listening on: <http://localhost:5000> info: Microsoft.Hosting.Lifetime[0]
Dica
Neste exemplo, a aplicação está em execução na
localhost
porta 5000. A sua aplicação em execução pode ter um endereço e porta diferentes.Primeiro, experimente a API manualmente ao emitir um pedido GET para
/api/Author
.Dica
Neste exemplo, o URL seria
https://localhost:5000/api/Author
. Pode navegar para este URL com o seu browser.Em seguida, navegue para a página de documentação do Swagger em
/swagger
.Dica
Neste exemplo, o URL seria
https://localhost:5000/swagger
. Mais uma vez, pode navegar para este URL com o browser.