azd
Azure API Center ist ein Dienst, der Sie bei der Entwicklung und Pflege eines strukturierten Inventars der APIs Ihrer Organisation unterstützt. Mit API Center können Sie alle Ihre APIs an einem zentralen Ort verfolgen, unabhängig von Typ, Lebenszyklusphase oder Bereitstellungsort. API Center ermöglicht API-Erkennung, -Wiederverwendung und -Governance und stärkt API-Plattform-Teams.
Das API Center-Portal ist eine Website, die es Entwicklern und Interessengruppen ermöglicht, APIs nahtlos zu entdecken und mit ihnen zu interagieren. Unsere Referenzimplementierung des API Center-Portals ermöglicht es API-Plattform-Teams, API-Konsumenten ein webbasiertes API-Erkennungs- und Nutzungserlebnis zu bieten.
Die Referenzimplementierung des API Center-Portals bietet:
Für kostenlose SKU API Center-Instanzen werden maximal 5 APIs im API Center-Portal angezeigt, unabhängig davon, wie viele APIs sich im API Center befinden.
Für die Standard-SKU gibt es keine Begrenzung und alle APIs werden angezeigt.
Bevor Sie beginnen, stellen Sie sicher, dass Sie die folgenden Anforderungen erfüllt haben:
Sie haben zwei Möglichkeiten, dieses selbstgehostete API Center-Portal bereitzustellen:
azd
) für die einstufige Bereitstellung der Portal-App. Diese Option wird für einen optimierten Bereitstellungsprozess empfohlen.azd
HINWEIS : Für diese Option benötigen Sie die zusätzlichen Voraussetzungen
- ✅ Azure Developer CLI (
azd
)- ✅ Azure CLI
- ✅ GitHub-CLI
Verknüpfen Sie dieses Repository mit Ihrem GitHub-Konto und klonen Sie es.
git clone https://github.com/ < YOUR_GITHUB_ALIAS > /APICenter-Portal-Starter.git
Melden Sie sich mit dem folgenden Befehl an. Anschließend können Sie die Anwendung mit der azd
cli schnell bereitstellen und bereitstellen.
# Authenticate with Azure Developer CLI
azd auth login
# Authenticate with Azure CLI
az login
Führen Sie azd up
aus, um alle Ressourcen für Azure bereitzustellen und den Code für diese Ressourcen bereitzustellen.
azd up
Geben Sie einen Umgebungsnamen ein und wählen Sie Ihr gewünschtes subscription
und location
aus. Anschließend werden Sie aufgefordert, einige weitere Werte einzugeben:
apiCenterExisted
).apiCenterName
, apiCenterRegion
und apiCenterResourceGroupName
, wenn Sie die vorhandene API-Center-Ressource verwenden möchten ( apiCenterExisted
Wert auf true
).apiCenterExisted
auf false
).staticAppLocation
Wert für die Azure Static Web Apps-Instanz. Warten Sie einen Moment, bis die Ressourcenbereitstellung abgeschlossen ist.Es gibt zwei Szenarien:
- Portal mit neuem API Center – Sie müssen
False
fürapiCenterExisted
angeben undapiCenterName
,apiCenterRegion
undapiCenterResourceGroupName
leer lassen.- Portal mit vorhandenem API Center – Sie müssen
True
fürapiCenterExisted
angeben und Werte anapiCenterName
,apiCenterRegion
undapiCenterResourceGroupName
übergeben.
Wenn Sie die CI/CD-Pipeline mit GitHub Actions integrieren möchten, können Sie mit dem folgenden Befehl ein GitHub-Repository erstellen und den Code in das Repository übertragen. Melden Sie sich zunächst bei GitHub an.
# Authenticate with GitHub CLI
gh auth login
Führen Sie die folgenden Befehle aus, um Ihre GitHub-Repository-Variablen zu aktualisieren.
HINWEIS : Stellen Sie sicher, dass Sie dieses Repository mit Ihrem GitHub-Konto verknüpft haben, bevor Sie die folgenden Befehle ausführen.
# 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
Jetzt kann es losgehen! Schieben Sie den Code in das GitHub-Repository oder führen Sie den GitHub-Aktionsworkflow manuell aus, um Ihr Portal bereitzustellen.
Standardmäßig zeigt das Portal alle APIs Ihrer API Center-Instanz an. Sie können Ihre Portalinstanz so konfigurieren, dass sie bestimmte APIs herausfiltert, indem Sie die Eigenschaft scopingFilter
in der Datei public/config.example
mithilfe der OData-Abfragesyntax festlegen. Zum Beispiel:
{
"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"
}
Eine vollständige Liste der filterbaren Eigenschaften finden Sie im Dataplane-API-Ressourcenmodell.
HINWEIS : Für diese Option benötigen Sie die zusätzlichen Voraussetzungen
- ✅ Konfigurierte App-Registrierung in Ihrem Microsoft Entra ID-Mandanten mit dem richtigen API-Berechtigungsumfang und Umleitungs-URI.
- ✅ Portalanmeldung mit der richtigen Rollenzuweisung aktiviert
Befolgen Sie diese Schritte, um Ihre Entwicklungsumgebung einzurichten:
Klonen Sie das Repository
git clone https://github.com/Azure/APICenter-Portal-Starter.git
Zum Hauptzweig wechseln:
git checkout main
Kopieren Sie die Datei public/config.example
oder benennen Sie sie in public/config.json
um.
Konfigurieren Sie die Datei public/config.json
so, dass sie auf Ihren Azure API Center-Dienst verweist. Hier ist eine Beispielkonfiguration:
{ "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/ " } }
Installieren Sie die erforderlichen Pakete.
npm install
Entwicklungsserver starten – Mit diesem Befehl wird das Portal im lokal ausgeführten Entwicklungsmodus gestartet:
npm start
Azure Static Web Apps ist ein Dienst, der aus einem Code-Repository automatisch Full-Stack-Web-Apps erstellt und in Azure bereitstellt. In diesem Tutorial werden GitHub-Aktionen für die Bereitstellung in Azure Static Web Apps verwendet.
Um Ihr API Center-Portal anzuzeigen, das auf Static Web Apps ausgeführt wird, klicken Sie auf der Registerkarte „Übersicht“ in der Static Web App-Ressource, die Sie im Azure-Portal erstellt haben, auf App im Browser anzeigen .
Ideen und Anleitungen zur Verbesserung der Vorlage finden Sie in den Beitragsrichtlinien. Danke schön!
☀️ Wir freuen uns, von Ihnen zu hören! ☀️
Ihr Feedback ist für uns von unschätzbarem Wert und wir ermutigen Sie, Ihre Gedanken und Vorschläge im Abschnitt „Probleme“ des Repositorys mitzuteilen. Dort können Sie auch Fehler melden oder Funktionswünsche einreichen. Seien Sie versichert, wir werden Ihre Eingaben genau im Auge behalten, um uns kontinuierlich zu verbessern. Obwohl wir uns der Überwachung dieser Probleme widmen, beachten Sie bitte, dass dieser Kanal nicht Teil unseres Microsoft Azure Service Supports ist.
Die Unterstützung durch den Microsoft Azure-Support beschränkt sich auf die Ersteinrichtung der Azure-Funktions-App, die die Linting-Engine ausführt. Bei Problemen, die durch Umgebungsfaktoren verursacht werden, wird bestmöglicher Support bereitgestellt, beispielsweise (aber nicht beschränkt auf): Hosting-Plattform, Entwicklungsumgebung, Netzwerkkonfiguration.
Wenn Sie technische Unterstützung bei der Erweiterung der Linting-Engine oder der Verbesserung bestehender Regeln benötigen, nutzen Sie bitte bestehende technische Communities wie Stack Overflow. Wir bieten keinen Support über GitHub Issues an.
Wir begrüßen und schätzen Community-Beiträge.
Dieses Projekt hat den Microsoft Open Source Verhaltenskodex übernommen. Weitere Informationen finden Sie in den FAQ zum Verhaltenskodex oder wenden Sie sich bei weiteren Fragen oder Kommentaren an [email protected].
Marken Dieses Projekt kann Marken oder Logos für Projekte, Produkte oder Dienstleistungen enthalten. Die autorisierte Nutzung von Microsoft-Marken oder -Logos unterliegt den Marken- und Markenrichtlinien von Microsoft und muss diesen entsprechen. Die Verwendung von Microsoft-Marken oder -Logos in geänderten Versionen dieses Projekts darf keine Verwirrung stiften oder eine Sponsorschaft durch Microsoft implizieren. Jegliche Nutzung von Marken oder Logos Dritter unterliegt den Richtlinien dieser Drittanbieter.
Datenerfassung. Die Software kann Informationen über Sie und Ihre Nutzung der Software sammeln und diese an Microsoft senden. Microsoft kann diese Informationen verwenden, um Dienste bereitzustellen und unsere Produkte und Dienste zu verbessern. Sie können die Telemetrie wie im Repository beschrieben deaktivieren. Es gibt auch einige Funktionen in der Software, die es Ihnen und Microsoft ermöglichen können, Daten von Benutzern Ihrer Anwendungen zu sammeln. Wenn Sie diese Funktionen nutzen, müssen Sie geltendes Recht einhalten, einschließlich der Bereitstellung angemessener Hinweise für Benutzer Ihrer Anwendungen zusammen mit einer Kopie der Datenschutzerklärung von Microsoft. Unsere Datenschutzerklärung finden Sie unter https://go.microsoft.com/fwlink/?LinkID=824704. Weitere Informationen zur Datenerhebung und -verwendung finden Sie in der Hilfedokumentation und in unserer Datenschutzerklärung. Mit der Nutzung der Software erklären Sie sich mit diesen Praktiken einverstanden.
MIT