API-stöd i Azure Static Web Apps med Azure Functions
Azure Static Web Apps tillhandahåller serverlösa API-slutpunkter via Azure Functions. Med hjälp Azure Functions kan API:er skalas dynamiskt baserat på efterfrågan och innehåller följande funktioner:
Integrerad säkerhet med direkt åtkomst till användarautentisering och rollbaserade auktoriseringsdata.
Sömlös routning som gör API-vägen tillgänglig för webbappen på ett säkert sätt utan att kräva anpassade CORS-regler.
Azure Static Web Apps-API:er stöds av två möjliga konfigurationer beroende på värdplanen:
Hanterade funktioner: SOM standard är API:et för en statisk webbapp ett Azure Functions program som hanteras och distribueras av Azure Static Web Apps som är associerat med vissa begränsningar.
Bring Your Own Functions: Om du vill kan du ange ett befintligt Azure Functions program av valfri plantyp, som åtföljs av alla funktioner i Azure Functions. Med den här konfigurationen ansvarar du för att hantera en separat distribution för Functions-appen.
I följande tabell kontrasterar vi skillnaderna mellan att använda hanterade och befintliga funktioner.
| Funktion | Hanterade funktioner | Bring your own Functions |
|---|---|---|
| Åtkomst till Azure Functions utlösare | Endast HTTP | Alla |
| Körningar Azure Functions stöds | Node.js 12 .NET Core 3.1 .NET 6.0 Python 3.8 |
Alla |
| Värdplaner Azure Functions stöds | Förbrukning | Förbrukning Premium Dedikerad |
| Integrerad säkerhet med direkt åtkomst till användarautentisering och rollbaserade auktoriseringsdata | ✔ | ✔ |
| Routningsintegrering som gör API-vägen tillgänglig för webbappen på ett säkert sätt utan att kräva anpassade CORS-regler. | ✔ | ✔ |
| Durable Functions programmeringsmodell | ✕ | ✔ |
| Hanterade identiteter | ✕ | ✔ |
| Azure App Service hantering av autentiserings- och auktoriseringstoken | ✕ | ✔ |
| API-funktioner som är tillgängliga utanför Azure Static Web Apps | ✕ | ✔ |
| Key Vault referenser | ✕ | ✔ |
Konfiguration
API-slutpunkter är tillgängliga för webbappen via API-vägen.
| Hanterade funktioner | Ta med dina egna funktioner |
|---|---|
| Api-vägen är fast men du har kontroll över källkodsmappens plats för den hanterade functions-appen. Du kan ändra den här platsen genom att redigera YAML-arbetsflödesfilen som finns i lagringsplatsens mapp .github/workflows. | Begäranden till API-vägen skickas till din befintliga Azure Functions appen. |
Felsökning och loggar
Loggar är bara tillgängliga om du lägger till Application Insights.
| Hanterade funktioner | Ta med dina egna funktioner |
|---|---|
| Aktivera loggning genom att aktivera Application Insights på din statiska webbapp. | Aktivera loggning genom att aktivera Application Insights på din Azure Functions app. |
Villkor
- API-vägprefixet måste vara api.
- Vägregler för API-funktioner stöder endast omdirigeringar och skydd av vägar med roller.
| Hanterade funktioner | Ta med dina egna funktioner |
|---|---|
|
|