azd
O Azure API Center é um serviço que ajuda você a desenvolver e manter um inventário estruturado das APIs da sua organização. Com o API Center, você pode rastrear todas as suas APIs em um local centralizado, independentemente do tipo, estágio do ciclo de vida ou local de implantação. O API Center permite a descoberta, reutilização e governança de API, capacitando as equipes da plataforma API.
O portal API Center é um site que capacita desenvolvedores e partes interessadas a descobrir e interagir perfeitamente com APIs. Nossa implementação de referência do portal API Center permite que as equipes da plataforma API forneçam uma experiência de descoberta e consumo de API baseada na Web aos consumidores de API.
A implementação de referência do portal API Center fornece:
Para instâncias gratuitas do SKU API Center, um máximo de cinco APIs serão exibidas no portal do API Center, independentemente de quantas APIs estiverem no API Center.
Para SKU padrão, não há limite e todas as APIs serão exibidas.
Antes de começar, certifique-se de atender aos seguintes requisitos:
Você tem duas opções para implantar este portal do API Center auto-hospedado:
azd
) para implantação em uma etapa do aplicativo do portal. Esta opção é recomendada para um processo de implantação simplificado.azd
NOTA : Você precisará dos pré-requisitos adicionais para esta opção
- ✅ CLI do desenvolvedor do Azure (
azd
)- ✅ CLI do Azure
- ✅ GitHub CLI
Bifurque este repositório para sua conta GitHub e clone-o.
git clone https://github.com/ < YOUR_GITHUB_ALIAS > /APICenter-Portal-Starter.git
Faça login com o seguinte comando. Em seguida, você poderá usar o azd
cli para provisionar e implantar rapidamente o aplicativo.
# Authenticate with Azure Developer CLI
azd auth login
# Authenticate with Azure CLI
az login
Execute azd up
para provisionar todos os recursos para o Azure e implantar o código nesses recursos.
azd up
Insira um nome de ambiente e selecione a subscription
e location
desejados. Em seguida, você será solicitado a inserir mais alguns valores:
apiCenterExisted
).apiCenterName
, apiCenterRegion
e apiCenterResourceGroupName
, se você optar por usar o recurso existente do centro de API (valor apiCenterExisted
para true
).apiCenterExisted
para false
).staticAppLocation
para a instância dos Aplicativos Web Estáticos do Azure. Aguarde um momento até que a implantação do recurso seja concluída.Existem dois cenários:
- Portal com nova API Center – Você precisa dar
False
paraapiCenterExisted
e deixarapiCenterName
,apiCenterRegion
eapiCenterResourceGroupName
em branco.- Portal com API Center existente – Você precisa dar
True
paraapiCenterExisted
e passar valores paraapiCenterName
,apiCenterRegion
eapiCenterResourceGroupName
.
Se quiser integrar o pipeline de CI/CD com GitHub Actions, você pode usar o comando a seguir para criar um repositório GitHub e enviar o código por push para o repositório. Primeiro de tudo, faça login no GitHub.
# Authenticate with GitHub CLI
gh auth login
Execute os comandos a seguir para atualizar as variáveis do repositório GitHub.
NOTA : Certifique-se de ter bifurcado este repositório para sua conta GitHub antes de executar os comandos a seguir.
# Bash
AZURE_CLIENT_ID= $( ./infra/scripts/get-azdvariable.sh --key AZURE_CLIENT_ID )
azd pipeline config --principal-id $AZURE_CLIENT_ID
# PowerShell
$AZURE_CLIENT_ID = $( ./infra/scripts/Get-AzdVariable.ps1 -Key AZURE_CLIENT_ID )
azd pipeline config --principal-id $AZURE_CLIENT_ID
Agora você está pronto para ir! Envie o código para o repositório GitHub ou execute manualmente o fluxo de trabalho GitHub Actions para implantar seu portal.
Por padrão, o portal exibe todas as APIs da sua instância do API Center. Você pode configurar sua instância do portal para filtrar determinadas APIs configurando a propriedade scopingFilter
no arquivo public/config.example
usando a sintaxe de consulta OData. Por exemplo:
{
"dataApiHostName": ".data..azure-apicenter.ms/workspaces/default",
"title": "API portal",
"authentication": {
"clientId": "",
"tenantId": "",
"scopes": ["https://azure-apicenter.net/user_impersonation"],
"authority": "https://login.microsoftonline.com/"
},
"scopingFilter": "customProperties/compliant eq true"
}
Para obter uma lista completa de propriedades filtráveis, consulte o modelo de recursos da API do plano de dados.
NOTA : Você precisará dos pré-requisitos adicionais para esta opção
- ✅ Registro de aplicativo configurado em seu locatário Microsoft Entra ID com o escopo de permissão de API correto e URI de redirecionamento.
- ✅ Login do portal habilitado com a atribuição de função correta
Siga estas etapas para configurar seu ambiente de desenvolvimento:
Clonar o repositório
git clone https://github.com/Azure/APICenter-Portal-Starter.git
Mude para o branch principal:
git checkout main
Copie ou renomeie o arquivo public/config.example
para public/config.json
.
Configure o arquivo public/config.json
para apontar para o serviço do Azure API Center. Aqui está um exemplo de configuração:
{ "dataApiHostName" : ".data. , "title" : " API portal " , "authentication" : { "clientId" : ".azure-apicenter.ms/workspaces/default " " , "tenantId" : "" , "scopes" : [ " https://azure-apicenter.net/user_impersonation " ], "authority" : " https://login.microsoftonline.com/ " } }
Instale os pacotes necessários.
npm install
Iniciar o servidor de desenvolvimento - Este comando iniciará o portal em modo de desenvolvimento rodando localmente:
npm start
Azure Static Web Apps é um serviço que cria e implanta automaticamente aplicativos Web de pilha completa no Azure a partir de um repositório de código. Este tutorial usa GitHub Actions para implantar em aplicativos Web estáticos do Azure.
Para visualizar o portal do API Center em execução em Aplicativos Web Estáticos, clique em Exibir aplicativo no navegador na guia Visão Geral no recurso Aplicativo Web Estático que você criou no portal do Azure.
Consulte as diretrizes de contribuição para ideias e orientações sobre como melhorar o modelo. Obrigado!
☀️ Adoramos ouvir você! ☀️
Seu feedback é inestimável para nós e encorajamos você a compartilhar suas idéias e sugestões na seção Problemas do repositório. Você também pode relatar bugs ou enviar solicitações de recursos lá. Fique tranquilo, estaremos atentos às suas sugestões para melhorar continuamente. Embora nos dediquemos a monitorar esses problemas, observe que este canal não faz parte do nosso suporte de serviço do Microsoft Azure.
A assistência do Suporte do Microsoft Azure está limitada à configuração inicial do aplicativo Azure Function que executa o mecanismo linting. O suporte de melhor esforço é fornecido para problemas causados por fatores ambientais, como (mas não limitado a): plataforma de hospedagem, ambiente de desenvolvimento, configuração de rede.
Se você precisar de assistência técnica para estender o mecanismo de linting ou melhorar as regras existentes, aproveite as comunidades técnicas existentes, como Stack Overflow. Não oferecemos suporte por meio do GitHub Issues.
Acolhemos e apreciamos as contribuições da comunidade.
Este projeto adotou o Código de Conduta de Código Aberto da Microsoft. Para obter mais informações, consulte as Perguntas frequentes sobre o Código de Conduta ou entre em contato com [email protected] com perguntas ou comentários adicionais.
Marcas registradas Este projeto pode conter marcas registradas ou logotipos de projetos, produtos ou serviços. O uso autorizado de marcas registradas ou logotipos da Microsoft está sujeito e deve seguir as Diretrizes de Marcas Registradas e Marcas da Microsoft. O uso de marcas registradas ou logotipos da Microsoft em versões modificadas deste projeto não deve causar confusão nem implicar patrocínio da Microsoft. Qualquer uso de marcas registradas ou logotipos de terceiros está sujeito às políticas desses terceiros.
Coleta de dados. O software pode coletar informações sobre você e seu uso do software e enviá-las à Microsoft. A Microsoft poderá usar essas informações para fornecer serviços e melhorar nossos produtos e serviços. Você pode desligar a telemetria conforme descrito no repositório. Existem também alguns recursos no software que podem permitir que você e a Microsoft coletem dados de usuários de seus aplicativos. Se você usar esses recursos, deverá cumprir a lei aplicável, incluindo o fornecimento de avisos apropriados aos usuários de seus aplicativos, juntamente com uma cópia da declaração de privacidade da Microsoft. Nossa declaração de privacidade está localizada em https://go.microsoft.com/fwlink/?LinkID=824704. Você pode saber mais sobre a coleta e uso de dados na documentação de ajuda e em nossa declaração de privacidade. O uso do software funciona como seu consentimento para essas práticas.
MIT