Dela via


API-stöd i Azure Static Web Apps med Azure App Service

Azure App Service är en hanterad plattform som är värd för webbprogram som kör kod på servrar. Azure App Service stöder många körningar och ramverk, inklusive Node.js, ASP.NET Core, PHP, Java och Python.

När du länkar din Azure App Service-webbapp till din statiska webbapp skickas alla begäranden till din statiska webbapp med en väg som börjar med /api till samma väg i Azure App Service-appen.

När en App Service-app som standard är länkad till en statisk webbapp accepterar App Service-appen endast begäranden som skickas via den länkade statiska webbappen. En Azure App Service-app kan bara länkas till en enda statisk webbapp i taget.

Alla Azure App Service-värdplaner är tillgängliga för användning med Azure Static Web Apps.

API-alternativ för Static Web Apps omfattar följande Azure-tjänster:

Mer information finns i översikten över API:er.

Kommentar

Integreringen med Azure App Service kräver standardplanen för Static Web Apps.

Serverdelsintegrering stöds inte i statiska webbappars pull-begärandemiljöer.

Förutsättningar

Om du vill länka en App Service till din statiska webbapp måste du ha en befintlig App Service-resurs och en statisk webbapp.

Resurs Beskrivning
Azure App Service Om du inte redan har en följer du stegen i guiden Skapa en webbapp i Azure .
Befintlig statisk webbapp Om du inte redan har en följer du stegen i komma igång-guiden för att skapa en statisk webbapp utan ramverk .

Exempel

Överväg en befintlig Azure App Service-instans som exponerar en slutpunkt via följande plats.

https://my-web-app.azurewebsites.net/api/getProducts

När du har länkat kan du komma åt samma slutpunkt via api sökvägen från din statiska webbapp, som du ser i det här exemplets URL.

https://red-sea-123.azurestaticapps.net/api/getProducts

Båda URL:erna pekar på samma API-slutpunkt. Slutpunkten i App Service måste ha prefixet /api eftersom Static Web Apps matchar begäranden som görs till /api och proxyservrar hela sökvägen till den länkade resursen.

Följ dessa steg om du vill länka en webbapp som API-serverdel för en statisk webbapp:

  1. Gå till den statiska webbappen i Azure-portalen.

  2. Välj API:er på navigeringsmenyn.

  3. Leta upp den miljö som du vill länka API Management-instansen till. Markera Länk.

  4. I Resurstyp för serverdel väljer du Webbapp.

  5. I Prenumeration väljer du den prenumeration som innehåller den Azure App Service-app som du vill länka.

  6. I Resursnamn väljer du Azure App Service-appen.

  7. Markera Länk.

När länkningsprocessen är klar skickas begäranden till vägar som börjar med /api till den länkade App Service-appen.

Hantera åtkomst till Azure App Service

App Service-appen är konfigurerad med en identitetsprovider med namnet Azure Static Web Apps (Linked) som endast tillåter trafik som skickas via den statiska webbappen. Om du vill göra din App Service-app tillgänglig för andra program uppdaterar du autentiseringskonfigurationen för att lägga till en annan identitetsprovider eller ändrar säkerhetsinställningarna så att oautentiserad åtkomst tillåts.

Så här avlänkar du en webbapp från en statisk webbapp:

  1. Gå till den statiska webbappen i Azure-portalen.

  2. Välj API:er på navigeringsmenyn.

  3. Leta upp den miljö som du vill ta bort länken till och välj webbappens namn.

  4. Välj Ta bort länk.

När avlänkningsprocessen är klar skickas inte längre begäranden till vägar som börjar med /api till din App Service-app.

Kommentar

För att förhindra att apptjänstappen oavsiktligt exponeras för anonym trafik tas inte identitetsprovidern som skapats av länkningsprocessen bort automatiskt. Du kan ta bort identitetsprovidern med namnet Azure Static Web Apps (länkad) från App Service-appens autentiseringsinställningar.

Ta bort autentisering från App Service-resursen

Följ dessa steg för att ta bort identitetsprovidern om du vill att App Service-resursen ska kunna ta emot anonym trafik:

  1. Gå till App Service-resursen i Azure-portalen.

  2. Välj Autentisering på navigeringsmenyn.

  3. I listan över identitetsprovidrar tar du bort identitetsprovidern som är relaterad till static web apps-resursen.

  4. Välj Ta bort autentisering för att ta bort autentisering och tillåta anonym trafik till din App Service-resurs.

Din App Service-resurs kan nu ta emot anonym trafik.

Nästa steg