- Create and run Azure Functions locally by using the Core Tools – Learn | Microsoft Docs
- Create and run Azure Functions locally by using the Core Tools (dotnet)
Create a new functions project with func init
สร้าง functions project ชื่อ FunctionJS2207
> mkdir FunctionJS2207 > cd .\FunctionJS2207\
To create a new functions project, run func init
on the command line.
> func init Use the up/down arrow keys to select a worker runtime: dotnet dotnet (isolated process) node python powershell custom > func init Use the up/down arrow keys to select a worker runtime:node Use the up/down arrow keys to select a language: javascript typescript > func init Use the up/down arrow keys to select a worker runtime:node Use the up/down arrow keys to select a language:javascript Writing package.json Writing .gitignore Writing host.json Writing local.settings.json Writing C:\Project\FunctionJS2207\.vscode\extensions.json
ดูไฟล์ที่คำสั่ง func init
สร้างมาให้ เมื่อเลือกเป็น node
, javascript
$ tree . ├── host.json ├── local.settings.json └── package.json 0 directories, 3 files
host.json
{ "version": "2.0", "logging": { "applicationInsights": { "samplingSettings": { "isEnabled": true, "excludedTypes": "Request" } } }, "extensionBundle": { "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[2.*, 3.0.0)" } }
local.settings.json
{ "IsEncrypted": false, "Values": { "FUNCTIONS_WORKER_RUNTIME": "node", "AzureWebJobsStorage": "UseDevelopmentStorage=true" } }
package.json
{ "name": "", "version": "1.0.0", "description": "", "scripts": { "start": "func start", "test": "echo \"No tests yet...\"" }, "dependencies": {}, "devDependencies": {} }
Create a new function with func new
สร้าง function ชื่อ HttpExample โดยใช้ template แบบ HttpTrigger
> func new Use the up/down arrow keys to select a template: Azure Blob Storage trigger Azure Cosmos DB trigger Durable Functions activity Durable Functions entity Durable Functions Entity HTTP starter Durable Functions HTTP starter Durable Functions orchestrator Azure Event Grid trigger Azure Event Hub trigger HTTP trigger IoT Hub (Event Hub) Kafka output Kafka trigger Azure Queue Storage trigger RabbitMQ trigger SendGrid Azure Service Bus Queue trigger Azure Service Bus Topic trigger SignalR negotiate HTTP trigger Timer trigger > func new Use the up/down arrow keys to select a template:HTTP trigger Function name: [HttpTrigger] HttpExample
จะได้ไฟล์ HttpExample/index.js และไฟล์ HttpExample/function.json
HttpExample/index.js
module.exports = async function (context, req) { context.log('JavaScript HTTP trigger function processed a request.'); const name = (req.query.name || (req.body && req.body.name)); const responseMessage = name ? "Hello, " + name + ". This HTTP triggered function executed successfully." : "This HTTP triggered function executed successfully. Pass a name in the query string or in the request body for a personalized response."; context.res = { // status: 200, /* Defaults to 200 */ body: responseMessage }; }
HttpExample/function.json
{ "bindings": [ { "authLevel": "function", "type": "httpTrigger", "direction": "in", "name": "req", "methods": [ "get", "post" ] }, { "type": "http", "direction": "out", "name": "res" } ] }
Run functions locally
> func start Azure Functions Core Tools Core Tools Version: 4.0.4629 Commit hash: N/A (64-bit) Function Runtime Version: 4.6.1.18388 Functions: HttpExample: [GET,POST] http://localhost:7071/api/HttpExample For detailed output, run func with --verbose flag.