Függvény létrehozása és közzététele az Azure-ban a Java és a Gradle használatával

Ez a cikk bemutatja, hogyan hozhat létre és tehet közzé Java-függvényprojekteket az Azure Functionsben a Gradle parancssori eszközzel. Ha elkészült, a függvénykód egy kiszolgáló nélküli üzemeltetési csomagban fut az Azure-ban, és egy HTTP-kérés aktiválja.

Feljegyzés

Ha a Gradle nem az ön által kedvelt fejlesztési eszköz, tekintse meg a Maven, az IntelliJ IDEA és a VS Code használatával készült Java-fejlesztőknek készült hasonló oktatóanyagokat.

Előfeltételek

Ha függvényeket szeretne fejleszteni a Java használatával, akkor a számítógépre a következőket kell telepíteni:

Aktív Azure-előfizetésre is szüksége van. Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.

Fontos

A rövid útmutató befejezéséhez a JAVA_HOME környezeti változót a JDK telepítési helyére kell beállítani.

Functions-projekt előkészítése

A mintaprojekt klónozásához használja a következő parancsot:

git clone https://github.com/Azure-Samples/azure-functions-samples-java.git
cd azure-functions-samples-java/

Nyissa meg build.gradle és módosítsa a appName következő szakaszban szereplő nevet egy egyedi névre, hogy elkerülje a tartománynév ütközését az Azure-ban való üzembe helyezéskor.

azurefunctions {
    resourceGroup = 'java-functions-group'
    appName = 'azure-functions-sample-demo'
    pricingTier = 'Consumption'
    region = 'westus'
    runtime {
      os = 'windows'
    }
    localDebug = "transport=dt_socket,server=y,suspend=n,address=5005"
}

Nyissa meg az új Function.java fájlt az src/main/java elérési útról egy szövegszerkesztőben, és tekintse át a létrehozott kódot. Ez a kód egy HTTP által aktivált függvény, amely a kérés törzsét visszhangozza.

Függvény helyi futtatása

Futtassa a következő parancsot a függvényprojekt létrehozásához:

gradle jar --info
gradle azureFunctionsRun

A projekt helyi futtatásakor az Alábbihoz hasonló kimenet jelenik meg az Azure Functions Core Toolsban:

...

Now listening on: http://0.0.0.0:7071
Application started. Press Ctrl+C to shut down.

Http Functions:

    HttpExample: [GET,POST] http://localhost:7071/api/HttpExample
...

Aktiválja a függvényt a parancssorból az alábbi cURL paranccsal egy új terminálablakban:

curl -w "\n" http://localhost:7071/api/HttpExample --data AzureFunctions

A várt kimenet a következő:

Hello, AzureFunctions

Feljegyzés

Ha authLevel értékre vagy ADMINértékre FUNCTION van állítva, a függvénykulcs nem szükséges helyi futtatáskor.

A Ctrl+C billentyűparanccsal állítsa le a függvénykódot a terminálablakban.

A függvény üzembe helyezése az Azure-ban

A függvényalkalmazás és a kapcsolódó erőforrások az Azure-ban jönnek létre a függvényalkalmazás első üzembe helyezésekor. Az üzembe helyezés előtt az az login Azure CLI paranccsal jelentkezzen be az Azure-előfizetésbe.

az login

Tipp.

Ha a fiókja több előfizetéshez is hozzáfér, az az account set használatával állítsa be az alapértelmezett előfizetést ehhez a munkamenethez.

A következő paranccsal helyezze üzembe a projektet egy új függvényalkalmazásban.

gradle azureFunctionsDeploy

Ez a build.gradle fájl értékei alapján hozza létre a következő erőforrásokat az Azure-ban:

  • Erőforráscsoport. A megadott resourceGroup névvel elnevezve.
  • Storage-fiók. A Függvények megkövetelik. A rendszer véletlenszerűen hozza létre a nevet a Tárfiók nevének követelményei alapján.
  • App Service-csomag. Kiszolgáló nélküli használatalapú csomag üzemeltetése a függvényalkalmazáshoz a megadott régióban. A név véletlenszerűen jön létre.
  • Függvényalkalmazás. A függvényalkalmazás a függvények üzembe helyezési és végrehajtási egysége. A név az alkalmazásneve, véletlenszerűen generált számmal hozzáfűzve.

Az üzembe helyezés a projektfájlokat is csomagba csomagolja, és zip-alapú üzembe helyezéssel telepíti őket az új függvényalkalmazásba, és engedélyezve van a csomagból való futtatás mód.

A mintaprojektBEN ANONYMOUSa HTTP-eseményindító authLevel értéke, amely kihagyja a hitelesítést. Ha azonban más authLevel típusú vagy ADMINhasonló FUNCTION értéket használ, le kell kérnie a függvénykulcsot a függvényvégpont HTTP-en keresztüli meghívásához. A függvénykulcs lekérésének legegyszerűbb módja az Azure Portal.

A HTTP-eseményindító URL-címének lekérése

A függvény aktiválásához szükséges URL-címet a függvénykulcs használatával az Azure Portalról szerezheti be.

  1. Keresse meg az Azure Portalt, jelentkezzen be, írja be a függvényalkalmazás alkalmazásnevét a Lap tetején található Keresés mezőbe, és nyomja le az Enter billentyűt.

  2. A függvényalkalmazásban válassza a Függvények lehetőséget, válassza ki a függvényt, majd kattintson a függvény URL-címének lekérése parancsra a jobb felső sarokban.

    Copy the function URL from the Azure portal

  3. Válassza az alapértelmezett (függvénykulcs) lehetőséget, és válassza a Másolás lehetőséget.

Mostantól használhatja a másolt URL-címet a függvény eléréséhez.

A függvény ellenőrzése az Azure-ban

Az Azure-ban cURLfutó függvényalkalmazás ellenőrzéséhez cserélje le az alábbi minta URL-címét a portálról másolt URL-címre.

curl -w "\n" http://azure-functions-sample-demo.azurewebsites.net/api/HttpExample --data AzureFunctions

Ez post kérést küld a függvényvégpontnak AzureFunctions a kérelem törzsében. A következő válasz jelenik meg.

Hello, AzureFunctions

Következő lépések

Létrehozott egy Java-függvényprojektet egy HTTP által aktivált függvénnyel, futtatta a helyi gépen, és üzembe helyezte az Azure-ban. Most egészítse ki a függvényt a következők szerint...