Serverlösa REST-API:er med Azure Functions
Azure Functions är en viktig beräkningstjänst som du använder för att skapa serverlösa REST-baserade API:er. HTTP-utlösare exponerar REST-slutpunkter som kan anropas av dina klienter, till exempel webbläsare, mobilappar och andra serverdelstjänster. Med inbyggt stöd för vägar kan en enda HTTP-utlöst funktion exponera ett mycket funktionellt REST API. Functions tillhandahåller också ett eget grundläggande nyckelbaserat auktoriseringsschema för att begränsa åtkomsten till specifika klienter. Mer information finns i HTTP-utlösare för Azure Functions
I vissa scenarier kan du behöva ditt API för att stödja en mer komplex uppsättning REST-beteenden. Du kan till exempel behöva kombinera flera HTTP-funktionsslutpunkter till ett enda API. Du kanske också vill skicka begäranden till en eller flera REST-baserade tjänster på serverdelen. Slutligen kan dina API:er kräva en högre säkerhetsnivå som gör att du kan tjäna pengar på dess användning.
I dag är den rekommenderade metoden för att skapa mer komplexa och robusta API:er baserat på dina funktioner att använda de omfattande API-tjänster som tillhandahålls av Azure API Management. API Management använder en principbaserad modell så att du kan styra routning, säkerhet och OpenAPI-integrering. Den stöder även avancerade principer som hastighetsbegränsning för intäktsgenerering. Tidigare versioner av Functions-körningen använde den äldre funktionen Functions Proxies.
Viktigt!
Azure Functions-proxyservrar är en äldre funktion för version 1.x till 3.x av Azure Functions-körningen. Stöd för proxyservrar kan återaktiveras i version 4.x så att du kan uppgradera funktionsapparna till den senaste körningsversionen. Så snart som möjligt bör du byta till att integrera dina funktionsappar med Azure API Management. Med API Management kan du dra nytta av en mer komplett uppsättning funktioner för att definiera, skydda, hantera och tjäna pengar på dina Functions-baserade API:er. Mer information finns i API Management-integrering.
Information om hur du återaktiverar stöd för proxyservrar i Functions version 4.x finns i Återaktivera proxyservrar i Functions v4.x.
Flytta från Functions-proxyservrar till API Management
När du flyttar från Functions-proxyservrar till att använda API Management måste du integrera din funktionsapp med en API Management-instans och sedan konfigurera API Management-instansen så att den fungerar som den tidigare proxyn. I följande avsnitt finns länkar till relevanta artiklar som hjälper dig att lyckas använda API Management med Azure Functions.
Om du har problem med att flytta från proxyservrar eller om Azure API Management inte hanterar dina specifika scenarier kan du publicera en begäran i API Management-feedbackforumet.
API Management-integrering
Med API Management kan du importera en befintlig funktionsapp. Efter importen blir varje HTTP-utlöst funktionsslutpunkt ett API som du kan ändra och hantera. Efter importen kan du också använda API Management för att generera en OpenAPI-definitionsfil för dina API:er. Under importen ignoreras alla slutpunkter med auktoriseringsnivå admin
. Mer information om hur du använder API Management med Functions finns i följande artiklar:
Artikel | beskrivning |
---|---|
Exponera serverlösa API:er från HTTP-slutpunkter med Hjälp av Azure API Management | Visar hur du skapar en ny API Management-instans från en befintlig funktionsapp i Azure Portal. Stöder alla språk. |
Skapa serverlösa API:er i Visual Studio med hjälp av Azure Functions- och API Management-integrering | Visar hur du använder Visual Studio för att skapa ett C#-projekt som använder OpenAPI-tillägget. Med OpenAPI-tillägget kan du definiera .NET-API:er genom att tillämpa attribut direkt på C#-koden. |
Snabbstart: Skapa en ny Azure API Management-tjänstinstans med hjälp av Azure Portal | Skapa en ny API Management-instans i portalen. När du har skapat en API Management-instans kan du ansluta den till din funktionsapp. Andra metoder för att skapa andra metoder än portalen stöds. |
Importera en Azure-funktionsapp som ett API i Azure API Management | Visar hur du importerar en befintlig funktionsapp för att exponera befintliga HTTP-utlösarslutpunkter som ett hanterat API. Den här artikeln stöder både att skapa ett nytt API och lägga till slutpunkterna i ett befintligt hanterat API. |
När du har exponerat dina funktionsappslutpunkter med hjälp av API Management innehåller följande artiklar allmän information om hur du hanterar dina Functions-baserade API:er i API Management-instansen.
Artikel | beskrivning |
---|---|
Redigera ett API | Visar hur du arbetar med ett befintligt API som finns i API Management. |
Principer i Azure API Management | I API Management kan utgivare ändra API-beteendet genom konfiguration med hjälp av principer. Principer är en samling instruktioner som körs sekventiellt på begäran av eller efter ett svar från ett API. |
Principreferens för API Management | Referens som beskriver alla API Management-principer som stöds. |
API Management-principexempel | Användbar samling exempel som använder API Management-principer i viktiga scenarier. |
Äldre functions-proxyservrar
Den äldre funktionen Functions Proxies innehåller också en uppsättning grundläggande API-funktioner för version 3.x och äldre version av Functions-körningen.
Viktigt!
Azure Functions-proxyservrar är en äldre funktion för version 1.x till 3.x av Azure Functions-körningen. Stöd för proxyservrar kan återaktiveras i version 4.x så att du kan uppgradera funktionsapparna till den senaste körningsversionen. Så snart som möjligt bör du byta till att integrera dina funktionsappar med Azure API Management. Med API Management kan du dra nytta av en mer komplett uppsättning funktioner för att definiera, skydda, hantera och tjäna pengar på dina Functions-baserade API:er. Mer information finns i API Management-integrering.
Information om hur du återaktiverar stöd för proxyservrar i Functions version 4.x finns i Återaktivera proxyservrar i Functions v4.x.
Några grundläggande tips för hur du utför motsvarande uppgifter med API Management har lagts till i artikeln Functions Proxies. Vi har för närvarande inte dokumentation eller verktyg som hjälper dig att migrera en befintlig Functions Proxies-implementering till API Management.