Az Azure Functions helyi fejlesztése a Core Tools használatával

Az Azure Functions Core Tools lehetővé teszi a függvények fejlesztését és tesztelését a helyi számítógépen. Ha elkészült, a Core Tools használatával is üzembe helyezheti a kódprojektet az Azure-ban, és használhatja az alkalmazásbeállításokat.

A cikk C#-verzióját tekinti meg. Ügyeljen arra, hogy a cikk tetején válassza ki az előnyben részesített Functions programozási nyelvet.

Ha azonnal hozzá szeretne kezdeni, töltse ki a Core Tools rövid útmutatóját.

A cikk Java-verzióját tekinti meg. Ügyeljen arra, hogy a cikk tetején válassza ki az előnyben részesített Functions programozási nyelvet.

Ha azonnal hozzá szeretne kezdeni, töltse ki a Core Tools rövid útmutatóját.

A cikk JavaScript-verzióját tekinti meg. Ügyeljen arra, hogy a cikk tetején válassza ki az előnyben részesített Functions programozási nyelvet.

Ha azonnal hozzá szeretne kezdeni, töltse ki a Core Tools rövid útmutatóját.

A cikk PowerShell-verzióját tekinti meg. Ügyeljen arra, hogy a cikk tetején válassza ki az előnyben részesített Functions programozási nyelvet.

Ha azonnal hozzá szeretne kezdeni, töltse ki a Core Tools rövid útmutatóját.

A cikk Python-verzióját tekinti meg. Ügyeljen arra, hogy a cikk tetején válassza ki az előnyben részesített Functions programozási nyelvet.

Ha azonnal hozzá szeretne kezdeni, töltse ki a Core Tools rövid útmutatóját.

A cikk TypeScript-verzióját tekinti meg. Ügyeljen arra, hogy a cikk tetején válassza ki az előnyben részesített Functions programozási nyelvet.

Ha azonnal hozzá szeretne kezdeni, töltse ki a Core Tools rövid útmutatóját.

Az Azure Functions Core Tools telepítése

A Core Tools telepítésének ajánlott módja a helyi fejlesztőszámítógép operációs rendszerétől függ.

Az alábbi lépések windowsos telepítővel (MSI) telepítik a Core Tools v4.x-et. További információ a csomagalapú telepítőkről: Core Tools readme.

Töltse le és futtassa a Core Tools telepítőt a Windows-verzió alapján:

Ha korábban windowsos telepítőt (MSI) használt a Core Tools windowsos telepítéséhez, a legújabb verzió telepítése előtt el kell távolítania a régi verziót a Programok eltávolítása bővítményből.

A verzióval kapcsolatos problémákról a Core Tools verzióiban talál segítséget.

Helyi projekt létrehozása

Fontos

Python esetén Core Tools-parancsokat kell futtatnia egy virtuális környezetben. További információ : Rövid útmutató: Python-függvény létrehozása az Azure-ban a parancssorból.

A terminálablakban vagy egy parancssorból futtassa a következő parancsot egy projekt létrehozásához a MyProjFolder mappában:

func init MyProjFolder --worker-runtime dotnet-isolated 

Alapértelmezés szerint ez a parancs létrehoz egy projektet, amely folyamatban fut a Functions-gazdagéppel a .NET Core aktuális hosszú távú támogatási (LTS) verziójában. Ezzel a beállítással megcélzhatja a --target-framework .NET egy bizonyos támogatott verzióját, beleértve a .NET-keretrendszer. További információkért lásd a func init hivatkozást.

A két .NET-folyamatmodell összehasonlításához tekintse meg a folyamatmód összehasonlító cikkét.

A Java egy Maven-archetípussal hozza létre a helyi projektet, valamint az első HTTP-aktivált függvényt. Ahelyett, hogy használ func initfunc newés, inkább kövesse a parancssori gyorsútmutató lépéseit.

func init MyProjFolder --worker-runtime javascript --model V4

Ez a parancs létrehoz egy JavaScript-projektet, amely a kívánt programozási modell verzióját használja.

func init MyProjFolder --worker-runtime typescript --model V4

Ez a parancs létrehoz egy TypeScript-projektet, amely a kívánt programozási modell verzióját használja.

func init MyProjFolder --worker-runtime powershell
func init MyProjFolder --worker-runtime python --model V2

Ez a parancs létrehoz egy Python-projektet, amely a kívánt programozási modell verzióját használja.

Ha a --worker-runtime beállítás nélkül futfunc init, a rendszer kérni fogja, hogy válassza ki a projekt nyelvét. A parancs elérhető beállításaival func init kapcsolatos további információkért tekintse meg a func init hivatkozást.

Függvény létrehozása

Ha függvényt szeretne hozzáadni a projekthez, futtassa a func new parancsot az --template eseményindító sablon kiválasztásának lehetőségével. Az alábbi példa létrehoz egy HTTP-eseményindítót:MyHttpTrigger

func new --template "Http Trigger" --name MyHttpTrigger

Ez a példa létrehoz egy Queue Storage-eseményindítót:MyQueueTrigger

func new --template "Azure Queue Storage Trigger" --name MyQueueTrigger

A függvények hozzáadásakor a következő szempontokat kell figyelembe venni:

  • Ha a --template beállítás nélkül futfunc new, a rendszer kérni fogja, hogy válasszon egy sablont.

  • func templates list A parancs használatával megtekintheti a nyelvhez elérhető sablonok teljes listáját.

  • Amikor egy szolgáltatáshoz csatlakozó eseményindítót ad hozzá, olyan alkalmazásbeállítást is hozzá kell adnia, amely egy kapcsolati sztring vagy egy felügyelt identitásra hivatkozik a local.settings.json fájlban. Az alkalmazásbeállítások ilyen módon történő használata megakadályozza, hogy hitelesítő adatokat ágyazza be a kódba. További információ: Az alkalmazásbeállítások helyi használata.

  • A Core Tools a C#-projekt adott kötési bővítményére is hivatkozik.

A parancs elérhető beállításaival func new kapcsolatos további információkért tekintse meg a func new hivatkozást.

Kötés hozzáadása a függvényhez

A Functions szolgáltatásspecifikus bemeneti és kimeneti kötéseket biztosít, amelyek megkönnyítik, hogy a függvény a szolgáltatásspecifikus ügyféloldali SDK-k használata nélkül kapcsolódjon más Azure-szolgáltatásokhoz. További információkat az Azure Functions triggers and bindings concepts (Az Azure Functions eseményindítói és kötési alapelvei) témakörben talál.

Ha bemeneti vagy kimeneti kötést szeretne hozzáadni egy meglévő függvényhez, manuálisan kell frissítenie a függvénydefiníciót.

Az alábbi példa a függvénydefiníciót mutatja be, miután hozzáadott egy Queue Storage kimeneti kötést egy HTTP-aktivált függvényhez:

Mivel a HTTP által aktivált függvény HTTP-választ is ad vissza, a függvény egy MultiResponse objektumot ad vissza, amely a HTTP és az üzenetsor kimenetét egyaránt jelöli.

[Function("HttpExample")]
public static MultiResponse Run([HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequest req,
    FunctionContext executionContext)
{

Ez a példa a kimeneti kötést MultiResponse tartalmazó objektum definíciója:

public class MultiResponse
{
    [QueueOutput("outqueue",Connection = "AzureWebJobsStorage")]
    public string[] Messages { get; set; }
    public IActionResult HttpResponse { get; set; }
}

A példának a saját projektre való alkalmazásakor előfordulhat, hogy át kell váltania HttpRequestHttpRequestData a HttpResponseDataIActionResult ASP.NET Core-integrációra, vagy sem.

A függvény befejeződésekor a rendszer üzeneteket küld az üzenetsorba. A kimeneti kötés definiálásának módja a folyamatmodelltől függ. További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

@FunctionName("HttpExample")
public HttpResponseMessage run(
        @HttpTrigger(name = "req", methods = {HttpMethod.GET, HttpMethod.POST}, authLevel = AuthorizationLevel.ANONYMOUS) 
        HttpRequestMessage<Optional<String>> request, 
        @QueueOutput(name = "msg", queueName = "outqueue", 
        connection = "AzureWebJobsStorage") OutputBinding<String> msg, 
        final ExecutionContext context) {

További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

Példa kötés Node.js v4-modellhez még nem érhető el.

A kimeneti kötés definiálásának módja a Node.js modell verziójától függ. További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

$outputMsg = $name
Push-OutputBinding -name msg -Value $outputMsg

További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

@app.route(route="HttpExample")
@app.queue_output(arg_name="msg", queue_name="outqueue", connection="AzureWebJobsStorage")
def HttpExample(req: func.HttpRequest, msg: func.Out [func.QueueMessage]) -> func.HttpResponse:
    logging.info('Python HTTP trigger function processed a request.')

A kimeneti kötés definiálásának módja a Python-modell verziójától függ. További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

Példa kötés Node.js v4-modellhez még nem érhető el.

A kimeneti kötés definiálásának módja a Node.js modell verziójától függ. További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

A következő szempontokat kell figyelembe venni, amikor kötéseket ad hozzá egy függvényhez:

  • A function.json konfigurációs fájllal függvényeket definiáló nyelvek esetében a Visual Studio Code leegyszerűsíti a kötések meglévő függvénydefinícióhoz való hozzáadásának folyamatát. További információ: Csatlakozás függvények kötéseket használó Azure-szolgáltatásokhoz.
  • Amikor egy szolgáltatáshoz csatlakozó kötéseket ad hozzá, olyan alkalmazásbeállítást is hozzá kell adnia, amely egy kapcsolati sztring vagy felügyelt identitásra hivatkozik a local.settings.json fájlra. További információ: Az alkalmazásbeállítások helyi használata.
  • Támogatott kötés hozzáadásakor a bővítményt már telepíteni kell, amikor az alkalmazás bővítménycsomagot használ. További információ: bővítménykötegek.
  • Ha új kötéskiterjesztést igénylő kötést ad hozzá, a C#-projektben az adott kötésbővítményre is fel kell vennie egy hivatkozást.

További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

További információ, beleértve a példa kötéskódra mutató hivatkozásokat, amelyekre hivatkozhat, olvassa el a Kötések hozzáadása függvényhez című témakört.

A Functions-futtatókörnyezet indítása

Mielőtt futtathatja vagy hibakeresésre használhatja a függvényeket a projektben, el kell indítania a Functions-gazdagépet a projekt gyökérkönyvtárából. A gazdagép a projekt összes függvényéhez engedélyezi az eseményindítókat. Ezzel a paranccsal indítsa el a helyi futtatókörnyezetet:

mvn clean package 
mvn azure-functions:run
func start
npm install
npm start     

Ezt a parancsot virtuális környezetben kell futtatni.

A Függvények gazdagép indításakor a projektben lévő függvények listáját adja ki, beleértve a HTTP által aktivált függvények URL-címeit is, például az alábbi példában:

Found the following functions:
Host.Functions.MyHttpTrigger

Job host started
Http Function MyHttpTrigger: http://localhost:7071/api/MyHttpTrigger

A függvények helyi futtatásakor vegye figyelembe az alábbi szempontokat:

  • Alapértelmezés szerint az engedélyezés helyileg nincs kényszerítve a HTTP-végpontok esetében. Ez azt jelenti, hogy a rendszer az összes helyi HTTP-kérést authLevel = "anonymous"a következőképpen kezeli. További információt a HTTP-kötésről szóló cikkben talál. A helyi futtatáskor a beállítással --enableAuth engedélyezheti az engedélyezést. További információ: func start

  • A helyi Azurite emulátort akkor használhatja, ha helyileg futtat olyan függvényeket, amelyek hozzáférést igényelnek az Azure Storage-szolgáltatásokhoz (Queue Storage, Blob Storage és Table Storage) anélkül, hogy ezekhez a szolgáltatásokhoz az Azure-ban kellene csatlakozniuk. Helyi emuláció használatakor a helyi gazdagép (func.exe) elindítása előtt mindenképpen indítsa el az Azurite-ot. További információ: Helyi tároló emulációja.

  • A Helyi Azurite-emulációval eleget tehet a Python v2-feldolgozó tárolási követelményeinek.
  • A nem HTTP-függvényeket helyileg aktiválhatja anélkül, hogy élő szolgáltatáshoz csatlakozik. További információ: Helyi függvény futtatása.

  • Ha az alkalmazás Elemzések kapcsolati adatait a local.settings.json fájlba írja, a rendszer a helyi naplóadatokat az adott alkalmazás Elemzések példányba írja. A helyi telemetriai adatok éles adatoktól való elkülönítéséhez fontolja meg egy külön alkalmazáspéldány Elemzések használatát a fejlesztéshez és teszteléshez.

  • A Core Tools 1.x-es verziójának használatakor ehelyett a func host start parancsot használva indítsa el a helyi futtatókörnyezetet.

Helyi függvény futtatása

A helyi Functions-gazdagép (func.exe) futtatásával mostantól aktiválhat egyes függvényeket a függvénykód futtatásához és hibakereséséhez. Az egyes függvények végrehajtásának módja az eseményindító típusától függ.

Feljegyzés

A jelen témakörben található példák a cURL eszközzel http-kéréseket küldenek a terminálról vagy egy parancssorból. Egy tetszőleges eszközzel HTTP-kéréseket küldhet a helyi kiszolgálónak. A cURL eszköz alapértelmezés szerint Linux-alapú rendszereken és Windows 10 17063-os és újabb buildeken érhető el. Régebbi Windows rendszeren először le kell töltenie és telepítenie kell a cURL eszközt.

A HTTP-eseményindítók indításakor http-kérést küldünk a helyi végpontnak és portnak a func.exe kimenetében látható módon, amely az alábbi általános formátummal rendelkezik:

http://localhost:<PORT>/api/<FUNCTION_NAME>

Ebben az URL-sablonban <FUNCTION_NAME> a függvény vagy útvonal neve, és <PORT> az a helyi port, amelyen func.exe figyel.

Ez a cURL-parancs például elindítja a MyHttpTrigger get kérés gyorsindítási függvényét a lekérdezési sztringben átadott névparaméterrel :

curl --get http://localhost:7071/api/MyHttpTrigger?name=Azure%20Rocks

Ez a példa ugyanaz a függvény, amelyet a kérelem törzsében található POST-kérés-továbbítási névből hívunk, és a Bash-rendszerhéj és a Windows parancssor esetében is megjelenik:

curl --request POST http://localhost:7071/api/MyHttpTrigger --data '{"name":"Azure Rocks"}'
curl --request POST http://localhost:7071/api/MyHttpTrigger --data "{'name':'Azure Rocks'}"

A HTTP-végpontok helyi meghívásakor a következő szempontok érvényesek:

  • A lekérdezési sztringben adatokat átadó böngészőből get kéréseket is kezdeményezhet. Minden más HTTP-metódushoz cURL, Fiddler, Postman vagy hasonló HTTP-teszteszközt kell használnia, amely támogatja a POST-kéréseket.

  • Ügyeljen arra, hogy ugyanazt a kiszolgálónevet és portot használja, amelyet a Functions-gazdagép figyel. A függvénygazda indításakor létrehozott kimenetben egy ehhez hasonló végpont jelenik meg. Ezt az URL-címet az eseményindító által támogatott HTTP-metódussal hívhatja meg.

Közzététel az Azure platformon

Az Azure Functions Core Tools háromféle üzembe helyezést támogat:

Üzemelő példány típusa Parancs Leírás
Projektfájlok func azure functionapp publish A függvényprojekt-fájlokat közvetlenül a függvényalkalmazásban helyezi üzembe zip-alapú üzembe helyezéssel.
Azure Container-alkalmazások func azurecontainerapps deploy Tárolóalapú függvényalkalmazás üzembe helyezése egy meglévő Container Apps-környezetben.
Kubernetes-fürt func kubernetes deploy Üzembe helyezi a Linux-függvényalkalmazást egyéni Docker-tárolóként egy Kubernetes-fürtön.

Az Azure CLI vagy az Azure PowerShell helyi telepítésével kell rendelkeznie ahhoz, hogy közzétehesse magát az Azure-ban a Core Toolsból. Alapértelmezés szerint a Core Tools ezeket az eszközöket használja az Azure-fiókkal való hitelesítéshez.

Ha nincsenek telepítve ezek az eszközök, ehelyett érvényes hozzáférési jogkivonatot kell beszereznie, amelyet az üzembe helyezés során használhat. A hozzáférési jogkivonatot az --access-token üzembehelyezési parancsok lehetőségével jelenítheti meg.

Projektfájlok üzembe helyezése

A helyi kód azure-beli függvényalkalmazásban való közzétételéhez használja a func azure functionapp publish publish parancsot, ahogyan az alábbi példában is látható:

func azure functionapp publish <FunctionAppName>

Ez a parancs közzéteszi a projektfájlokat az aktuális könyvtárból a <FunctionAppName> .zip üzembehelyezési csomagba. Ha a projekt fordítást igényel, az üzembe helyezés során távolról történik.

A Java a Maven használatával teszi közzé a helyi projektet az Azure-ban a Core Tools helyett. A projekt azure-ban való közzétételéhez használja a következő Maven-parancsot:

mvn azure-functions:deploy

A parancs futtatásakor az Azure-erőforrások a kezdeti üzembe helyezés során jönnek létre a pom.xml fájl beállításai alapján. További információ: A függvényprojekt üzembe helyezése az Azure-ban.

Az ilyen típusú üzembe helyezésre a következő szempontok vonatkoznak:

  • A közzététel felülírja a távoli függvényalkalmazás üzembe helyezésének meglévő fájljait.

  • Már létrehozott egy függvényalkalmazást az Azure-előfizetésében. A Core Tools üzembe helyezi a projektkódot ebben a függvényalkalmazás-erőforrásban. Ha tudni szeretné, hogyan hozhat létre függvényalkalmazást a parancssorból vagy a terminálablakból az Azure CLI vagy az Azure PowerShell használatával, olvassa el a Függvényalkalmazás létrehozása kiszolgáló nélküli végrehajtáshoz című témakört. Ezeket az erőforrásokat az Azure Portalon is létrehozhatja. Hibaüzenet jelenik meg, amikor olyan helyen próbál közzétenni, <FunctionAppName> amely nem létezik az előfizetésében.

  • A projektmappák tartalmazhatnak nyelvspecifikus fájlokat és könyvtárakat, amelyeket nem szabad közzétenni. A kizárt elemek egy .funcignore fájlban jelennek meg a gyökérprojekt mappájában.

  • A projekt alapértelmezés szerint úgy van üzembe helyezve, hogy az az üzembe helyezési csomagból fusson. Az ajánlott üzembe helyezési mód letiltásához használja a --nozip lehetőséget.

  • A rendszer távoli buildelést végez lefordított projekteken. Ez a beállítással --no-buildszabályozható.

  • Ezzel a --publish-local-settings beállítással automatikusan létrehozhat alkalmazásbeállításokat a függvényalkalmazásban a local.settings.json fájl értékei alapján.

  • A függvényalkalmazás egy adott elnevezett pontjára való közzétételhez használja a --slot lehetőséget.

Tárolók üzembe helyezése

A Core Tools lehetővé teszi a tárolóalapú függvényalkalmazás üzembe helyezését a felügyelt Azure Container Apps-környezetekben és a felügyelt Kubernetes-fürtökön is.

A következő func azurecontainerapps deploy paranccsal helyezzen üzembe egy meglévő tárolórendszerképet egy Container Apps-környezetben:

func azurecontainerapps deploy --name <APP_NAME> --environment <ENVIRONMENT_NAME> --storage-account <STORAGE_CONNECTION> --resource-group <RESOURCE_GROUP> --image-name <IMAGE_NAME> [--registry-password] [--registry-server] [--registry-username]

Azure Container Apps-környezetben való üzembe helyezéskor a következő szempontok érvényesek:

  • A környezetnek és a tárfióknak már léteznie kell. A megadott tárfiókot kapcsolati sztring az üzembe helyezett függvényalkalmazás használja.

  • A Container Appsben való üzembe helyezéskor nem kell külön függvényalkalmazás-erőforrást létrehoznia.

  • A tárolási kapcsolati sztring és más szolgáltatás hitelesítő adatai fontos titkos kulcsok. Győződjön meg arról, hogy a szkriptfájlokat func azurecontainerapps deploy biztonságosan tárolja, és ne tárolja őket nyilvánosan elérhető forrásvezérlő rendszerekben. A local.settings.json fájlt titkosíthatja a további biztonság érdekében.

További információ: Azure Functionst üzemeltető Azure Container Apps.

Alkalmazásbeállítások helyi használata

Ha függvényalkalmazásban fut az Azure-ban, a függvények által megkövetelt beállítások biztonságosan tárolódnak az alkalmazásbeállításokban. A helyi fejlesztés során ezeket a beállításokat a rendszer ehelyett hozzáadja a Values gyűjteményhez a local.settings.json fájlban. A local.settings.json fájl a helyi fejlesztési eszközök által használt beállításokat is tárolja.

Values A projekt local.settings.json fájljában található gyűjtemény elemei a függvényalkalmazás azure-beli alkalmazásbeállításaiban lévő elemek tükrözésére szolgálnak.

A helyi beállításfájl használatakor a következő szempontok érvényesek:

  • Mivel a local.settings.json tartalmazhat titkos kulcsokat, például kapcsolati sztring, soha ne tárolja távoli adattárban. A Core Tools segítségével titkosíthatja ezt a helyi beállításfájlt a nagyobb biztonság érdekében. További információt a Helyi beállítások fájlban talál. A local.settings.json fájlt a további biztonság érdekében is titkosíthatja.

  • A helyi beállítások alapértelmezés szerint nem lesznek automatikusan migrálva, amikor a projektet közzéteszik az Azure-ban. --publish-local-settings A projektfájlok közzétételekor a beállítással győződjön meg arról, hogy ezek a beállítások bekerülnek az Azure-beli függvényalkalmazásba. A szakasz értékei ConnectionStrings soha nem lesznek közzétéve. A beállításokat bármikor feltöltheti a local.settings.json fájlból .

  • A local.settings.json-fájl beállításait az Azure-beli függvényalkalmazás beállításaival töltheti le és írhatja felül. További információ: Alkalmazásbeállítások letöltése.

  • A függvényalkalmazás beállításainak értékei környezeti változókként is olvashatók a kódban. További információ: Környezeti változók.
  • A függvényalkalmazás beállításainak értékei környezeti változókként is olvashatók a kódban. További információ: Környezeti változók.
  • A függvényalkalmazás beállításainak értékei környezeti változókként is olvashatók a kódban. További információ: Környezeti változók.
  • A függvényalkalmazás beállításainak értékei környezeti változókként is olvashatók a kódban. További információ: Környezeti változók.
  • A függvényalkalmazás beállításainak értékei környezeti változókként is olvashatók a kódban. További információ: Környezeti változók.

Alkalmazásbeállítások letöltése

A projekt gyökérkönyvtárából az alábbi paranccsal töltse le az alkalmazás összes beállítását az myfunctionapp12345 Azure-ban:

func azure functionapp fetch-app-settings myfunctionapp12345

Ez a parancs felülírja a local.settings.json fájlban lévő meglévő beállításokat az Azure-ból származó értékekkel. Ha még nincs jelen, a rendszer új elemeket ad hozzá a gyűjteményhez. További információkért tekintse meg a func azure functionapp fetch-app-settings parancsot.

Tárolási kapcsolati sztring letöltése

A Core Tools segítségével könnyedén lekérheti az összes olyan tárfiók kapcsolati sztring, amelyhez hozzáféréssel rendelkezik. A projekt gyökérkönyvtárából a következő paranccsal töltse le a kapcsolati sztring egy nevű mystorage12345tárfiókból.

func azure storage fetch-connection-string mystorage12345

Ez a parancs hozzáad egy local.settings.json fájlhoz elnevezett mystorage12345_STORAGE beállítást, amely tartalmazza a fiók kapcsolati sztringmystorage12345. További információkért tekintse meg a func azure storage fetch-connection-string parancsot.

A fejlesztés során nagyobb biztonság érdekében fontolja meg a local.settings.json fájl titkosítását.

Helyi beállítások feltöltése az Azure-ba

Ha a beállítás használata nélkül teszi közzé a projektfájlokat az --publish-local-settings Azure-ban, a local.settings.json fájl beállításai nem lesznek beállítva a függvényalkalmazásban. A beállításokat bármikor újrafuttathatja func azure functionapp publish úgy --publish-settings-only , hogy csak a beállításokat töltse fel a projektfájlok ismételt közzététele nélkül.

Az alábbi példa csak a Values local.settings.json fájlban lévő gyűjtemény beállításait tölti fel a függvényalkalmazásba az Azure-ban nevesített myfunctionapp12345:

func azure functionapp publish myfunctionapp12345 --publish-settings-only

A helyi beállításfájl titkosítása

A kapcsolati sztring és más értékes adatok biztonságának javítása érdekében a Core Tools lehetővé teszi a local.settings.json fájl titkosítását. A fájl titkosítása esetén a futtatókörnyezet automatikusan visszafejti a beállításokat, ha szükséges, ugyanúgy, mint az Azure-beli alkalmazásbeállításokkal. A helyileg titkosított fájlokat is visszafejtheti a beállítások használatához.

A projekt helyi beállításfájljának titkosításához használja az alábbi parancsot:

func settings encrypt

A titkosított helyi beállítások visszafejtéséhez használja az alábbi parancsot, hogy működjön vele:

func settings decrypt

A beállításfájl titkosítása és visszafejtése után a fájl IsEncrypted beállítása is frissül.

Kötésbővítmények konfigurálása

A függvények eseményindítói és kötései .NET-bővítmények (NuGet-) csomagokként vannak implementálva. Ahhoz, hogy egy adott kötésbővítményt használhasson, a bővítményt telepíteni kell a projektben.

Ez a szakasz nem vonatkozik a Functions-futtatókörnyezet 1.x verziójára. Az 1.x verzióban a támogatott kötés szerepel az alapvető termékbővítményben.

C#-osztálykódtár-projektek esetén adjon hozzá hivatkozásokat az adott NuGet-csomagokra a függvények által igényelt kötésbővítményekhez. A C#-szkript (.csx) projektnek bővítménykötegeket kell használnia.

A Functions bővítménycsomagokat biztosít, amelyek megkönnyítik a kötésbővítmények használatát a projektben. A host.json fájlban verziószámozott és definiált bővítménycsomagok az alkalmazás kompatibilis kötésbővítmény-csomagjainak teljes készletét telepítik. A host.json már engedélyezve kell lennie a bővítménykötegeknek. Ha valamilyen okból hozzá kell adnia vagy frissítenie kell a bővítménycsomagot a host.json fájlban, tekintse meg a bővítménycsomagokat.

Ha nem támogatott csomagban lévő kötésbővítményt vagy bővítményverziót kell használnia, manuálisan kell telepítenie a bővítményeket. Ilyen ritka forgatókönyvek esetén lásd a func extensions install parancsot.

A Core Tools verziói

Az Azure Functions Core Tools fő verziói az Azure Functions-futtatókörnyezet meghatározott főverzióihoz kapcsolódnak. A Core Tools 4.x-es verziója például támogatja a Functions-futtatókörnyezet 4.x verzióját. Ez a verzió a Functions-futtatókörnyezet és a Core Tools ajánlott főverziója. Az Azure Functions Core Tools-adattárban meghatározhatja a Core Tools legújabb kiadású verzióját.

Futtassa a következő parancsot az aktuális Core Tools-telepítés verziójának meghatározásához:

func --version

Ha másként nem jelezzük, a cikkben szereplő példák a 4.x verzióra mutatnak.

A Core Tools-telepítésekre a következő szempontok vonatkoznak:

  • A Core Tools csak egy verzióját telepítheti egy adott számítógépre.

  • A Core Tools legújabb verziójára való frissítéskor ugyanazt a módszert kell használnia, amelyet az eredeti telepítéshez használt a frissítés végrehajtásához. Ha például MSI-t használt Windows rendszeren, távolítsa el az aktuális MSI-t, és telepítse a legújabbat. Vagy ha npm-et használt, futtassa újra a npm install command.

  • A Core Tools 2.x és 3.x verzióját a Functions-futtatókörnyezet 2.x és 3.x verziójával használták, amelyek elérték a támogatásuk megszűnését. További információkért tekintse meg az Azure Functions futtatókörnyezeti verzióinak áttekintését.

  • A Functions Runtime 1.x-es verziójának használatakor a Core Tools 1.x-es verziója szükséges, amely továbbra is támogatott. A Core Tools ezen verziója csak helyileg futtatható Windows rendszerű számítógépeken. Ha jelenleg az 1.x verzión fut, érdemes megfontolnia az alkalmazás áttelepítését a 4.x verzióra.

Következő lépések

Megtudhatja, hogyan fejleszthet , tesztelhet és tehet közzé Azure-függvényeket az Azure Functions alapvető eszközeivel. Az Azure Functions Core Tools nyílt forráskód és a GitHubon fut. Hiba vagy szolgáltatáskérés elküldéséhez nyisson meg egy GitHub-problémát.