Megosztás a következőn keresztül:


Kiszolgáló nélküli Node.js-alkalmazások fejlesztése az Azure Functions használatával

Az Azure Functions hatékony kiszolgáló nélküli infrastruktúrát biztosít, amellyel könnyedén fejleszthet méretezhető, igény szerinti HTTP-végpontokat. A JavaScript vagy a TypeScript használatával olyan kiszolgáló nélküli alkalmazásokat hozhat létre, amelyek különböző eseményekre reagálnak, így anélkül összpontosíthat a kódírásra, hogy a kiszolgálók kezelésével kellene foglalkoznia. Ez az útmutató segítséget nyújt a kiszolgáló nélküli Node.js-alkalmazások Azure Functions használatával történő fejlesztésének megkezdésében, és zökkenőmentesen integrálható más Azure-szolgáltatásokkal.

Mi az a függvényerőforrás?

Az Azure-függvényerőforrás egy logikai egység az összes kapcsolódó függvényhez egyetlen Azure-beli földrajzi helyen. Az erőforrás egyetlen függvényt vagy több függvényt tartalmazhat, amelyek függetlenek lehetnek egymástól, vagy kapcsolódhatnak bemeneti vagy kimeneti kötésekhez. Számos gyakori függvény közül választhat, vagy létrehozhatja sajátját.

A függvény erőforrás-beállításai közé tartoznak a tipikus kiszolgáló nélküli konfigurációk, beleértve a környezeti változókat, a hitelesítést, a naplózást és a CORS-t.

Tartós, állapotalapú függvények

A Durable Functions megőrzi az állapotot, vagy felügyeli a hosszú ideig futó függvényeket az Azure-ban. Hozza létre az első tartós függvényt a JavaScriptben.

A statikus webalkalmazások függvényeket tartalmaznak

Ha olyan statikus előtér-ügyfélalkalmazást fejleszt (például Angular, React vagy Vue), amely kiszolgáló nélküli API-kra is szükség van, használja statikus webalkalmazásokat függvényekkel, hogy mindkettőt összecsomagolják.

Proxy az ügyfélalkalmazásból az API-ba

Ha statikus webalkalmazással szeretné üzembe helyezni az API-t, nem kell proxyt használnia az ügyfélalkalmazás API-hívásaihoz. A proxy akkor jön létre, ha felügyelt alkalmazásként telepíti az Azure Functions alkalmazást.

Ha helyi fejlesztést használ statikus webalkalmazással és Azure Functions szolgáltatással, az Azure Static Web App CLI biztosítja a helyi proxyt.

Az Azure-függvényhez konfigurálni kívánt gyakori biztonsági beállítások

Az Alábbi gyakori beállításokat kell konfigurálni az Azure-függvény biztonságossá tételéhez:

  • Konfigurációs beállítások
    • Konfigurációs beállítások – alkalmazásbeállítások létrehozása olyan beállításokhoz, amelyek nem befolyásolják a biztonságot.
    • Titkos kódok és kulcsok – minden olyan beállításhoz, amely hatással van a biztonságra, hozzon létre egy Azure Key Vaultot , és kérje le ezeket a beállításokat a Key Vaultból.
    • FTP-állapot a platformbeállításokon – alapértelmezés szerint mindegyik engedélyezett. A biztonság javítása érdekében csak FTPS-t kell választania, vagy teljesen le kell tiltania az FTP-t.
  • CORS – konfigurálja a kliens domének beállításait. Ne használja *az összes tartományt.
  • TLS/SSL-beállítás HTTPS-hez – alapértelmezés szerint az API HTTP- és HTTPS-kéréseket fogad el. Csak a TLS/SSL-beállításokban engedélyezze a HTTPS-t. Mivel a függvényalkalmazás biztonságos altartományon található, azonnal (a következővel httpsegyütt) használhatja, és késleltetheti a tartománynév megvásárlását, és a tartományhoz tartozó tanúsítványt is használhatja, amíg el nem készül.
  • Üzembehelyezési pontok – hozzon létre egy üzembehelyezési pontot, például stage vagy preflight küldjön le erre a pontra. Ha készen áll, cserélje le ezt a szakaszt az éles környezetbe. Nem szokás manuálisan leküldni az éles környezetbe. A kódbázisnak képesnek kell lennie arra, hogy jelezze az adott ponton található verziót vagy véglegesítést.

Az Azure Functions fejlesztésének előfeltételei

Egyszerű JavaScript-függvény HTTP-kérésekhez

A függvény egy exportált aszinkron függvény, amely kérelem- és környezetinformációkat tartalmaz. Az Alábbi részleges képernyőkép az Azure Portalról a függvénykódot mutatja.

import { app, HttpRequest, HttpResponseInit, InvocationContext } from "@azure/functions";

export async function status(request: HttpRequest, context: InvocationContext): Promise<HttpResponseInit> {
    context.log(`Http function processed request for url "${request.url}"`);

    return {
        status: 200,
        jsonBody: {
            env: process.env
        }
    };
};

app.http('status', {
    route: "status",
    methods: ['GET'],
    authLevel: 'anonymous',
    handler: status
});

Függvények helyi fejlesztése Visual Studio Code-tal és bővítményekkel

Hozza létre az első függvényt a Visual Studio Code használatával. A Visual Studio Code számos részletet leegyszerűsít az Azure Functions bővítményével.

Ezzel a bővítménysel JavaScript- és TypeScript-függvényeket hozhat létre gyakori sablonokkal.

Integráció más Azure-szolgáltatásokkal

A kiszolgáló nélküli függvények eltávolítják a kiszolgáló konfigurációjának és felügyeletének nagy részét, így csak a szükséges kódra összpontosíthat.

  • Alacsony kódszámú függvények: Az Azure Functions használatával más Azure-szolgáltatások által aktivált függvényeket hozhat létre, vagy más Azure-szolgáltatásba kimenetet hozhat létre triggerkötésekhasználatával.
  • Nagy kódszámú függvények: Az Azure SDK-k segítségével koordinálhatja és vezérelheti a többi Azure-szolgáltatást.