Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O construtor de API de Dados dá suporte a pontos de extremidade híbridos por meio do uso de arquivos de fonte de dados, permitindo que você defina várias fontes de dados e suas entidades em arquivos de configuração separados.
Isso é útil quando:
- Você precisa expor entidades de mais de um banco de dados
- Você deseja organizar configurações modularmente
- Você precisa gerenciar diferentes back-ends de dados de forma independente
Structure
Para definir várias fontes de dados, crie vários arquivos de configuração e referencie-os data-source-files na matriz da configuração de nível superior.
Top-level file
{
"data-source-files": [
"dab-config-sql.json",
"dab-config-cosmos.json"
],
"runtime": {
"rest": {
"enabled": true
}
}
}
Arquivo filho: dab-config-sql.json
{
"data-source": {
"database-type": "mssql",
"connection-string": "@env('SQL_CONNECTION_STRING')"
},
"entities": {
"Book": {
"source": {
"object": "dbo.Books"
},
"permissions": [
{ "role": "anonymous", "actions": [ "read" ] }
]
}
}
}
Arquivo filho: dab-config-cosmos.json
{
"data-source": {
"database-type": "cosmosdb_nosql",
"connection-string": "@env('COSMOS_CONNECTION_STRING')",
"database-name": "library"
},
"entities": {
"LoanRecord": {
"source": {
"object": "LoanRecords"
},
"permissions": [
{ "role": "anonymous", "actions": [ "read" ] }
]
}
}
}
Behavior
- Somente as configurações do
runtimearquivo de nível superior são respeitadas - Cada arquivo filho deve conter um e
entitiesumadata-sourceseção - Os nomes de entidade devem ser globalmente exclusivos em todos os arquivos
- Entidades definidas em arquivos separados não podem referenciar umas às outras por meio de relações
- Os arquivos podem ser aninhados em subpastas, conforme necessário
Benefits
- Separação limpa da configuração por back-end
- Habilita APIs escalonáveis de vários bancos de dados
- Simplifica a manutenção para sistemas complexos
Limitations
- Nenhuma relação entre arquivos de configuração
- Referências de arquivo circular não são permitidas
- Somente o comportamento de runtime dos controles de arquivo de nível superior