API-Unterstützung in Azure Static Web Apps mit Azure Functions
Front-End-Webanwendungen rufen häufig Back-End-APIs für Daten und Dienste auf. Von Azure Static Web Apps werden serverlose API-Endpunkte über Azure Functions bereitgestellt.
Azure Functions-APIs in Static Web Apps sind je nach Hostingplan in zwei möglichen Konfigurationen verfügbar:
Verwaltete Funktionen: Standardmäßig ist die API einer statischen Web-App eine Azure Functions-Anwendung, die von Azure Static Web Apps verwaltet und bereitgestellt wird, was mit ein paar Einschränkungen einhergeht.
Bring Your Own Functions (BYOF) (Nutzung eigener Funktionen): Optional können Sie eine vorhandene Azure Functions-Anwendung eines beliebigen Plantyps bereitstellen, die alle Features von Azure Functions beinhaltet. Mit dieser Konfiguration sind Sie dafür verantwortlich, eine separate Bereitstellung für die Functions-App zu verarbeiten.
Die folgende Tabelle vergleicht die Unterschiede zwischen der Verwendung verwalteter und vorhandener Funktionen.
Funktion | Verwaltete Funktionen | Nutzung eigener Funktionen (BYOF) |
---|---|---|
Zugriff auf Trigger und Bindungen in Azure Functions | Nur HTTP | Alle |
Unterstützte Azure Functions-Runtimes1 | Weitere Informationen finden Sie unter Unterstützte Sprachen und Runtimes. | Alle |
Unterstützte Hostingpläne für Azure Functions | Verbrauch | Verbrauch Premium Dediziert |
Integrierte Sicherheit mit direktem Zugriff auf Benutzerdaten für die Authentifizierung und rollenbasierte Autorisierung | ✔ | ✔ |
Routingintegration, durch die die /api -Route ganz ohne benutzerdefinierte CORS-Regeln auf sichere Weise für die Web-App verfügbar gemacht wird. |
✔ | ✔ |
Durable Functions-Programmiermodell | ✕ | ✔ |
Verwaltete Identität | ✕ | ✔ |
Tokenverwaltung mithilfe der Authentifizierungs- und Autorisierungsfunktionen von Azure App Service | ✕ | ✔ |
Außerhalb von Azure Static Web Apps verfügbare API-Funktionen | ✕ | ✔ |
Key Vault-Verweise | ✕ | ✔ |
1 Um die Laufzeitversion in verwalteten Funktionen anzugeben, fügen Sie Ihrer Front-End-App eine Konfigurationsdatei hinzu, und legen Sie die apiRuntime
-Eigenschaft fest. Die Unterstützung unterliegt der Unterstützungsrichtlinie für die Azure Functions-Sprachlaufzeit.
API-Optionen für Static Web Apps umfassen die folgenden Azure-Dienste:
Weitere Informationen finden Sie in der Übersicht über APIs.
Konfiguration
API-Endpunkte sind für die Web-App über die api
-Route verfügbar.
Verwaltete Funktionen | Nutzung eigener Funktionen |
---|---|
Während die /api -Route festgelegt ist, haben Sie die Kontrolle über den Quellcode-Ordnerspeicherort der verwalteten Funktions-App. Dieser Ort kann durch Bearbeiten der YAML-Datei des Workflows geändert werden, die sich im Ordner .github/workflows Ihres Repositorys befindet. |
Anforderungen an die /api -Route werden an Ihre vorhandene Azure Functions-App gesendet. |
Problembehandlung und Protokolle
Protokolle sind nur verfügbar, wenn Sie Application Insights hinzufügen.
Verwaltete Funktionen | Nutzung eigener Funktionen |
---|---|
Aktivieren Sie die Protokollierung, indem Sie Application Insights für Ihre statische Web-App aktivieren. | Aktivieren Sie die Protokollierung, indem Sie Application Insights für Ihre Azure Functions-App aktivieren. |
Einschränkungen
Zusätzlich zu den Static Web Apps-API-Einschränkungen gelten ebenfalls die folgenden Einschränkungen für Azure Functions-APIs:
Verwaltete Funktionen | Nutzung eigener Funktionen |
---|---|
|
|